

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 AWS de IoT FleetWise
<a name="create-campaign"></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).

Você pode usar o FleetWise console de AWS IoT ou a API para criar campanhas para coletar dados de veículos.

**Importante**  
Para que sua campanha funcione, você deve ter o seguinte:  
O software Edge Agent está em execução no seu veículo. Para obter mais informações sobre como desenvolver, instalar e trabalhar com o software Edge Agent, faça o seguinte:  
Abra o console [AWS de IoT. FleetWise ](https://console.aws.amazon.com/iotfleetwise)
Na página inicial do serviço, na FleetWise seção **Introdução à AWS IoT**, escolha **Explore o Edge** Agent.
Você se configurou AWS IoT Core para provisionar seu veículo. Para obter mais informações, consulte [Provisionar AWS veículos de IoT FleetWise](provision-vehicles.md).

**Topics**
+ [Criar uma campanha (console)](#create-campaign-console)
+ [Criar uma campanha (AWS CLI)](#create-campaign-cli)
+ [Expressões lógicas para campanhas AWS de IoT FleetWise](logical-expression.md)

## Criar uma campanha (console)
<a name="create-campaign-console"></a>

Use o FleetWise console de AWS IoT para criar uma campanha para selecionar, coletar e transferir dados do veículo para a nuvem.

**Como criar uma campanha**

1. <a name="fleetwise-open-console"></a>Abra o console [AWS de IoT. FleetWise ](https://console.aws.amazon.com/iotfleetwise)

1. <a name="choose-campaigns"></a>No painel de navegação, selecione **Campanhas**.

1. Na página **Campanhas**, selecione **Criar campanha** e, em seguida, conclua as etapas nos tópicos a seguir.

**Topics**
+ [Etapa 1: configurar campanha](#configure-campaign-console)
+ [Etapa 2: especificar as condições de armazenamento e upload](#specify-storage-upload-conditions)
+ [Etapa 3: configurar o destino dos dados](#configure-data-collection-scheme-console)
+ [Etapa 4: adicionar veículos](#add-attributes-console)
+ [Etapa 5: analisar e criar](#review-and-create-campaign-console)
+ [Etapa 6: implantar uma campanha](#update-campaign-console)

**Importante**  
Você deve ter um catálogo de sinalização e um veículo antes de criar uma campanha. Para obter mais informações, consulte [Gerencie AWS catálogos de sinais de IoT FleetWise](signal-catalogs.md) e [Gerencie AWS veículos de IoT FleetWise](vehicles.md).
Após a criação de uma campanha, você deverá aprová-la. Para obter mais informações, consulte [Atualizar uma campanha AWS de IoT FleetWise](update-campaign-cli.md).

### Etapa 1: configurar campanha
<a name="configure-campaign-console"></a>

Em **Informações gerais**, faça o seguinte:

1. Insira um nome para a campanha.

1. (Opcional) Insira uma descrição.

Configure o esquema de coleta de dados da campanha. Um esquema de coleta de dados fornece instruções ao software Edge Agent sobre quais dados coletar ou quando coletá-los. No FleetWise console de AWS IoT, você pode configurar um esquema de coleta de dados das seguintes formas:
+ Defina manualmente o esquema de coleta de dados.
+ Faça upload de um arquivo para definir automaticamente o esquema de coleta de dados.

Em **Opção de configuração**, selecione uma das seguintes opções:
+ Para especificar manualmente o tipo de esquema de coleta de dados e definir opções para personalizar o esquema, selecione **Definir esquema de coleta de dados**. 

#### Definir manualmente o esquema de coleta de dados
<a name="manually-define-scheme-console"></a>

  Especifique manualmente o tipo de esquema de coleta de dados e defina opções para personalizar o esquema.

  1. Na seção **Detalhes do esquema de coleta de dados**, selecione o tipo de esquema de coleta de dados para usar nesta campanha. Para usar uma expressão lógica para reconhecer quais dados do veículo coletar, selecione **Baseado em condição**. Para usar um período específico para decidir com que frequência coletar dados do veículo, selecione **Baseado em tempo**.

  1. Defina por quanto tempo a campanha coletará dados.
**nota**  
Por padrão, uma campanha aprovada é ativada imediatamente e não tem horário de término definido. Para evitar cobranças extras, você deve especificar um intervalo de tempo.

  1. Se você especificou um esquema de coleta de dados baseado em condições, deverá definir uma expressão lógica para reconhecer quais dados coletar. AWS A IoT FleetWise usa uma expressão lógica para reconhecer quais dados coletar para um esquema baseado em condições. A expressão deve especificar o nome completo de um sinal como uma variável, um operador de comparação e um valor de comparação.

     Por exemplo, se você especificar a `$variable.`myVehicle.InVehicleTemperature` > 50.0` expressão, a AWS IoT FleetWise coletará valores de temperatura maiores que 50,0. Consulte instruções de como escrever expressões em [Expressões lógicas para campanhas AWS de IoT FleetWise](logical-expression.md). 

     Insira a expressão lógica usada para reconhecer quais dados devem ser coletados.

  1. (Opcional) Especifique a versão do idioma da expressão condicional. O valor padrão é 1.

  1. (Opcional) Especifique o intervalo mínimo de acionamento, que é a menor duração entre dois eventos de coleta de dados. Por exemplo, se um sinal muda frequentemente, você pode coletar dados em uma taxa mais lenta.

  1. Especifique a condição do **Modo de acionamento** para que o software Edge Agent colete dados. Por padrão, o FleetWise software Edge Agent para AWS IoT **sempre coleta dados sempre** que a condição é atendida. Ou poderá coletar dados somente quando a condição for atendida pela primeira vez, **no primeiro acionamento**.

  1. Se você tiver especificado um esquema de coleta de dados baseado em tempo, deverá especificar um **Período**, em milissegundos, de 10.000 a 60.000 milissegundos. O software Edge Agent usa o período de tempo para decidir com que frequência coletar dados.

  1. (Opcional) Edite as **opções avançadas do esquema**. 

     1. Para economizar largura de banda sem fio e reduzir o tráfego de rede compactando dados, selecione **Snappy**.

     1. (Opcional) Para definir por quanto tempo, em milissegundos, continuará coletando dados após um evento de coleta de dados, você pode especificar a **Duração da coleta pós-acionamento**.

     1. (Opcional) Para indicar o nível de prioridade da campanha, especifique a **prioridade** da campanha. As campanhas com um número menor de prioridade são implantadas primeiro e são consideradas de prioridade mais alta.

     1. O software Edge Agent pode armazenar dados localmente temporariamente quando um veículo não está conectado à nuvem. Após o restabelecimento da conexão, os dados armazenados localmente serão transferidos automaticamente para a nuvem. Especifique se você quer que o Edge Agent **armazene dados localmente** durante uma conexão perdida.

     1. (Opcional) Para fornecer informações adicionais para um sinal, adicione até cinco atributos como **dimensões de dados extras**.
+ Para fazer upload de um arquivo para definir o esquema de coleta de dados, selecione **Carregar um arquivo.json do seu dispositivo local**. AWS A IoT define FleetWise automaticamente quais opções você pode definir no arquivo. Você pode revisar e atualizar as opções selecionadas. 

#### Importe um arquivo para definir o esquema de coleta de dados
<a name="import-file-scheme-console"></a>

  Faça upload de um arquivo .json com detalhes sobre o esquema de coleta de dados.

  1. Para importar informações sobre o esquema de coleta de dados, selecione **Escolher arquivos**. Para obter mais informações sobre o formato de arquivo necessário, consulte a documentação [CreateCampaign](https://docs.aws.amazon.com//iot-fleetwise/latest/APIReference/API_CreateCampaign.html#API_CreateCampaign)da API.
**nota**  
AWS FleetWise Atualmente, a IoT suporta a extensão de formato de arquivo.json.

  1.  AWS A IoT define FleetWise automaticamente o esquema de coleta de dados com base nas informações do seu arquivo. Analise as opções que a AWS IoT FleetWise selecionou para você. É possível atualizar as opções, se necessário. 

### Etapa 2: especificar as condições de armazenamento e upload
<a name="specify-storage-upload-conditions"></a>

Para escolher se o software Edge Agent armazenará temporariamente os dados localmente quando um veículo não estiver conectado à nuvem, especifique o modo de spooling.
+ No **modo de spooling de dados**, escolha uma das seguintes opções:
  + **Não armazenado** — O software Edge Agent coleta, mas não armazena temporariamente dados localmente quando um veículo está off-line. O software Edge Agent transfere dados para a nuvem quando o veículo se reconecta.
  + **Armazenado em disco** — O software Edge Agent coleta e armazena temporariamente dados localmente quando um veículo está off-line. Os dados coletados são armazenados temporariamente em um local definido pela seção “persistência” do arquivo de configuração do Edge Agent. O Edge Agent transfere dados para a nuvem quando o veículo se reconecta.
  + **Armazenado em disco com partições** — O veículo sempre armazena temporariamente os dados no Edge na partição de dados especificada. Você pode escolher quando deseja encaminhar seus dados armazenados para a nuvem.

    1. (Opcional) Insira uma ID de partição para designar um determinado conjunto de dados.

    1. Insira um nome de pasta como o local onde os dados serão armazenados. O caminho absoluto do local de armazenamento é`{persistency_path} / {vehicle_name} / {campaign_name} / {storage_location}`.

    1. Insira o tamanho máximo de armazenamento dos dados armazenados na partição. Os dados mais recentes substituem os dados mais antigos quando a partição atinge o tamanho máximo.

    1. Insira o tempo mínimo em que os dados dessa partição serão mantidos no disco.

    1. (Opcional) Insira as condições de upload para a partição.

#### Especifique os sinais
<a name="specify-signals-console"></a>

Você pode especificar os sinais dos quais coletar dados durante a campanha.

**Para especificar os sinais dos quais coletar dados**

1. Selecione o **nome do sinal**.

1. (Opcional) Para **Contagem máxima de amostras**, insira o número máximo de amostras de dados que o software Edge Agent coleta e transfere para a nuvem durante a campanha.

1. (Opcional) Em **Intervalo mínimo de amostragem**, insira a duração mínima de tempo entre dois eventos de coleta de amostra de dados, em milissegundos. Se um sinal muda frequentemente, você pode usar este parâmetro para coletar dados em uma taxa mais lenta.

1. Para adicionar outro sinal, selecione **Adicionar mais sinais**. Você pode adicionar até 999 sinais.

1. Escolha **Próximo**.

### Etapa 3: configurar o destino dos dados
<a name="configure-data-collection-scheme-console"></a>

**nota**  
Se a campanha contiver sinais de dados do sistema de visão, você só poderá armazenar os dados do veículo no Amazon S3. Você não pode armazená-lo no Timestream nem enviá-lo para um tópico do MQTT.  
O recurso de dados de sistemas de visão está na versão de teste e está sujeito a alterações.  
O Amazon Timestream não está disponível na região Ásia-Pacífico (Mumbai).

Escolha o destino para onde você deseja enviar ou armazenar os dados coletados pela campanha. Você pode enviar dados do veículo para um tópico do MQTT ou armazená-los no Amazon S3 ou no Amazon Timestream.

Em **Configurações de destino**, faça o seguinte:
+ Escolha o tópico Amazon S3, Amazon Timestream ou MQTT na lista suspensa.

#### Amazon S3
<a name="S3-destination"></a>

**Importante**  
Você só pode transferir dados para o S3 se a AWS FleetWise IoT tiver permissões para gravar no bucket do S3. Para obter mais informações sobre como conceder acesso, consulte Como [controlar o acesso com a AWS IoT FleetWise](https://docs.aws.amazon.com/iot-fleetwise/latest/developerguide/controlling-access.html).

Para armazenar dados de veículos em um bucket S3, selecione **Amazon S3**. S3 é um serviço de armazenamento de objetos que armazena dados como objetos em buckets. Para obter mais informações, consulte [Como criar, configurar e trabalhar com buckets do Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/creating-buckets-s3.html) no Guia do usuário do *Amazon Simple Storage Service*.

O S3 otimiza o custo do armazenamento de dados e fornece mecanismos adicionais para usar dados de veículos, como data lakes, armazenamento centralizado de dados, pipelines de processamento de dados e análises. Você pode usar o S3 para armazenar dados para processamento e análise em lote. Por exemplo, você pode criar relatórios de eventos de frenagem brusca para o modelo de machine learning (ML). Os dados recebidos do veículo são armazenados em buffer por 10 minutos antes da entrega.

Em **Configurações de destino do S3**, faça o seguinte:

1. Em **bucket S3**, selecione um bucket para o qual AWS IoT FleetWise tenha permissão. 

1. (Opcional) Insira um prefixo personalizado que você possa usar para organizar os dados armazenados no bucket S3.

1. Selecione o formato de saída, que são os arquivos de formato salvos no bucket S3.

1. Selecione para compactar os dados armazenados no bucket S3 como um arquivo .gzip. Recomendamos a compactação de dados porque isso minimiza os custos de armazenamento.

1. As opções selecionadas em **Configurações de destino do S3** alteram o **URI do objeto S3 de exemplo**. Este é um exemplo de quais arquivos são salvos no S3.

#### Amazon Timestream
<a name="Timestream-destination"></a>

**Importante**  
Você só pode transferir dados para uma tabela se a AWS IoT FleetWise tiver permissões para gravar dados no Timestream. Para obter mais informações sobre como conceder acesso, consulte Como [controlar o acesso com a AWS IoT FleetWise](https://docs.aws.amazon.com/iot-fleetwise/latest/developerguide/controlling-access.html).  
O Amazon Timestream não está disponível na região Ásia-Pacífico (Mumbai).

Para armazenar dados de veículos em uma tabela Timestream, selecione **Amazon Timestream**. Você pode usar o Timestream para consultar dados do veículo para identificar tendências e padrões. Por exemplo, você pode usar o Timestream para criar um alarme para o nível de combustível do veículo. Os dados do veículo recebido são transferidos para o Timestream quase que em tempo real. Para obter mais informações, consulte [O que é o Amazon Timestream](https://docs.aws.amazon.com/timestream/latest/developerguide/what-is-timestream.html)? no Guia do *desenvolvedor do Amazon Timestream*.

Em **Configurações da tabela Timestream**, faça o seguinte:

1. Em **Nome do banco de dados Timestream**, selecione o nome do seu banco de dados Timestream na lista suspensa.

1. Em **Nome da tabela Timestream**, selecione o nome da tabela Timestream na lista suspensa.

Em **Acesso ao serviço para Timestream**, faça o seguinte:
+ Escolha um perfil do IAM na lista suspensa.

#### Tópico do MQTT
<a name="MQTT-destination"></a>

**Importante**  
Você só pode rotear dados para um tópico do MQTT se a AWS FleetWise IoT tiver permissões AWS IoT para os tópicos. Para obter mais informações sobre como conceder acesso, consulte Como [controlar o acesso com a AWS IoT FleetWise](https://docs.aws.amazon.com/iot-fleetwise/latest/developerguide/controlling-access.html).

Para enviar dados do veículo para um tópico do MQTT, escolha o tópico do **MQTT**.

Os dados do veículo enviados pelas mensagens MQTT são entregues quase em tempo real e permitem que você use regras para agir ou rotear dados para outros destinos. Para obter mais informações sobre o uso do MQTT, consulte [Protocolos e [regras](https://docs.aws.amazon.com/iot/latest/developerguide/iot-rules.html) de comunicação do dispositivo](https://docs.aws.amazon.com/iot/latest/developerguide/protocols.html) AWS IoT no *Guia do AWS IoT Core desenvolvedor*.

1. Em **Tópico do MQTT**, insira o **nome do tópico**.

1. No **tópico Acesso ao serviço para MQTT**, escolha se você deseja permitir que a AWS FleetWise **IoT crie e use uma nova função de serviço** para você. Se você quiser **usar uma função de serviço existente**, selecione a função na lista suspensa em **Selecionar** função.
+ Escolha **Próximo**.

### Etapa 4: adicionar veículos
<a name="add-attributes-console"></a>

Para escolher em quais veículos implantar sua campanha, selecione-os na lista de veículos. Filtre os veículos pesquisando os atributos e seus valores que você adicionou ao criar os veículos ou pelo nome do veículo.

Em **Filtrar veículos**, faça o seguinte:

1. Na caixa de pesquisa, encontre o atributo ou nome do veículo e escolha-o na lista.
**nota**  
Cada atributo pode ser usado apenas uma vez.

1. Insira o valor do atributo ou o nome do veículo no qual você deseja implementar a campanha. Por exemplo, se o nome completo do atributo for `fuelType`, insira `gasoline` como o valor.

1. Para procurar outro atributo do veículo, repita as etapas anteriores. Você pode pesquisar até cinco atributos de veículos e um número ilimitado de nomes de veículos. 

1. Os veículos que correspondem à sua pesquisa estão informados em **Nome do veículo**. Escolha os veículos nos quais deseja que a campanha seja implantada.
**nota**  
Até 100 veículos são exibidos nos resultados da pesquisa. Escolha **Selecionar tudo** para adicionar todos os veículos à campanha.

1. Escolha **Próximo**.

### Etapa 5: analisar e criar
<a name="review-and-create-campaign-console"></a>

Verifique as configurações da campanha e selecione **Criar campanha**.

**nota**  
Após a criação de uma campanha, você ou sua equipe deverão implantá-la nos veículos.

### Etapa 6: implantar uma campanha
<a name="update-campaign-console"></a>

Depois de criar uma campanha, você ou sua equipe deverão implantá-la nos veículos.

**Para implantar uma campanha**

1. Na página **Resumo da campanha**, selecione **Implantar**.

1. Revise e confirme que deseja iniciar a implantação e começar a coletar dados dos veículos conectados à campanha.

1. Escolha **Implantar**.

Para pausar a coleta de dados de veículos conectados à campanha, na página **Resumo da campanha**, selecione **Suspender**. Para retomar a coleta de dados dos veículos conectados à campanha, selecione **Continuar**.



## Criar uma campanha (AWS CLI)
<a name="create-campaign-cli"></a>

Você pode usar a operação [CreateCampaign](https://docs.aws.amazon.com/iot-fleetwise/latest/APIReference/API_CreateCampaign.html)da API para criar uma campanha. O exemplo a seguir usa a AWS CLI.

Quando você cria uma campanha, os dados coletados dos veículos podem ser enviados para um tópico do MQTT ou armazenados no Amazon S3 (S3) ou no Amazon Timestream. Selecione Timestream para obter um banco de dados de séries temporais rápido, escalável e sem servidor, e para armazenar dados que precisam de processamento quase que em tempo real. Escolha o S3 para armazenamento de objetos com escalabilidade, disponibilidade de dados, segurança e desempenho líderes do setor. Escolha o MQTT para fornecer dados quase em tempo real e usar [regras AWS IoT para](https://docs.aws.amazon.com/iot/latest/developerguide/iot-rules.html) realizar ações definidas por você ou rotear os dados para outros destinos. 

**Importante**  
Você só pode transferir dados do veículo para um tópico do MQTT, Amazon S3 ou Amazon Timestream se a AWS FleetWise IoT tiver permissões para enviar mensagens MQTT em seu nome ou para gravar dados no S3 ou no Timestream. Para obter mais informações sobre como conceder acesso, consulte Como [controlar o acesso com a AWS IoT FleetWise](https://docs.aws.amazon.com/iot-fleetwise/latest/developerguide/controlling-access.html).  
O Amazon Timestream não está disponível na região Ásia-Pacífico (Mumbai).

### Criar campanha
<a name="create-campaign-command"></a>

**Importante**  
Você deve ter um catálogo de sinalização e um veículo ou frota antes de criar uma campanha. Para obter mais informações, consulte [Gerencie AWS catálogos de sinais de IoT FleetWise](signal-catalogs.md), [Gerencie AWS veículos de IoT FleetWise](vehicles.md) e [Gerencie frotas na IoT AWS FleetWise](fleets.md).
Após a criação de uma campanha, você deverá usar a operação da API `UpdateCampaign` para aprovar a campanha. Para obter mais informações, consulte [Atualizar uma campanha AWS de IoT FleetWise](update-campaign-cli.md).

Para criar uma campanha, execute o seguinte comando.

*file-name*Substitua pelo nome do arquivo.json que contém a configuração da campanha.

```
aws iotfleetwise create-campaign --cli-input-json file://file-name.json
```

#### Exemplo de arquivo de configuração para S3
<a name="example-configuration-file-s3"></a>
+ *campaign-name*Substitua pelo nome da campanha que você está criando.
+ *signal-catalog-arn*Substitua pelo Amazon Resource Name (ARN) do catálogo de sinais.
+ *target-arn*Substitua pelo ARN de uma frota ou veículo que você criou.
+ *bucket-arn*Substitua pelo ARN do bucket S3.

```
{
    "name": "campaign-name",
    "targetArn": "target-arn", 
    "signalCatalogArn": "signal-catalog-arn", 
    "collectionScheme": {
        "conditionBasedCollectionScheme": {
            "conditionLanguageVersion": 1,
            "expression": "$variable.`Vehicle.DemoBrakePedalPressure` > 7000",
            "minimumTriggerIntervalMs": 1000,
            "triggerMode": "ALWAYS"
        }
    },
    "compression": "SNAPPY",
    "diagnosticsMode": "OFF",
    "postTriggerCollectionDuration": 1000,
    "priority": 0,
    "signalsToCollect": [
        {
         "maxSampleCount": 100,
         "minimumSamplingIntervalMs": 0,
         "name": "Vehicle.DemoEngineTorque"
        },
        {
         "maxSampleCount": 100,
         "minimumSamplingIntervalMs": 0,
         "name": "Vehicle.DemoBrakePedalPressure"
        }
    ],
    "spoolingMode": "TO_DISK",
    "dataDestinationConfigs": [
        {
         "s3Config": { 
             "bucketArn": "bucket-arn",
             "dataFormat": "PARQUET",
             "prefix": "campaign-name",
              "storageCompressionFormat": "GZIP"
      }
    }
  ],
     "dataPartitions": [ 
      { ...  }
  ]
}
```

#### Exemplo de arquivo de configuração para Timestream
<a name="example-configuration-file-ts"></a>

**nota**  
O Amazon Timestream não está disponível na região Ásia-Pacífico (Mumbai).
+ *campaign-name*Substitua pelo nome da campanha que você está criando.
+ *signal-catalog-arn*Substitua pelo ARN do catálogo de sinais.
+ *target-arn*Substitua pelo ARN de uma frota ou veículo que você criou.
+ *role-arn*Substitua pelo ARN da função de execução de tarefas que concede FleetWise permissão à AWS IoT para entregar dados à tabela Timestream.
+ *table-arn*Substitua pelo ARN da tabela Timestream.

```
{
  "name": "campaign-name",
  "targetArn": "target-arn",
  "signalCatalogArn": "signal-catalog-arn",
  "collectionScheme": {
    "conditionBasedCollectionScheme": {
      "conditionLanguageVersion": 1,
      "expression": "$variable.`Vehicle.DemoBrakePedalPressure` > 7000",
      "minimumTriggerIntervalMs": 1000,
      "triggerMode": "ALWAYS"
    }
  },
  "compression": "SNAPPY",
  "diagnosticsMode": "OFF",
  "postTriggerCollectionDuration": 1000,
  "priority": 0,
  "signalsToCollect": [
    {
      "maxSampleCount": 100,
      "minimumSamplingIntervalMs": 0,
      "name": "Vehicle.DemoEngineTorque"
    },
    {
      "maxSampleCount": 100,
      "minimumSamplingIntervalMs": 0,
      "name": "Vehicle.DemoBrakePedalPressure"
    }
  ],
  "spoolingMode": "TO_DISK",
  "dataDestinationConfigs": [
    {
      "timestreamConfig": {
        "executionRoleArn": "role-arn",
        "timestreamTableArn": "table-arn"
      }
    }
  ],
   "dataPartitions": [ 
      { ...  }
  ]
}
```

#### Exemplo de arquivo de configuração para um tópico do MQTT
<a name="example-configuration-file-mqtt"></a>
+ *campaign-name*Substitua pelo nome da campanha que você está criando.
+ *signal-catalog-arn*Substitua pelo Amazon Resource Name (ARN) do catálogo de sinais.
+ *target-arn*Substitua pelo ARN de uma frota ou veículo que você criou.
+ *topic-arn*Substitua pelo ARN do [tópico MQTT](https://docs.aws.amazon.com/iot/latest/developerguide/topics.html) que você especificou como destino para mensagens contendo dados do veículo.
+ *role-arn*Substitua pelo ARN da função de execução de tarefas que concede FleetWise permissão à AWS IoT para enviar, receber e agir em mensagens do tópico MQTT que você especificou.

```
{
  "name": "campaign-name",
  "targetArn": "target-arn",
  "signalCatalogArn": "signal-catalog-arn",
  "collectionScheme": {
    "conditionBasedCollectionScheme": {
      "conditionLanguageVersion": 1,
      "expression": "$variable.`Vehicle.DemoBrakePedalPressure` > 7000",
      "minimumTriggerIntervalMs": 1000,
      "triggerMode": "ALWAYS"
    }
  },
  "compression": "SNAPPY",
  "diagnosticsMode": "OFF",
  "postTriggerCollectionDuration": 1000,
  "priority": 0,
  "signalsToCollect": [
    {
      "maxSampleCount": 100,
      "minimumSamplingIntervalMs": 0,
      "name": "Vehicle.DemoEngineTorque"
    },
    {
      "maxSampleCount": 100,
      "minimumSamplingIntervalMs": 0,
      "name": "Vehicle.DemoBrakePedalPressure"
    }
  ],
  "spoolingMode": "TO_DISK",
  "dataDestinationConfigs": [
      {
          "mqttTopicConfig": {
              "mqttTopicArn": "topic-arn",
              "executionRoleArn": "role-arn"
          }
      }
  ]
}
```

Se você [ativou a criptografia](key-management.md) usando uma AWS KMS chave gerenciada pelo cliente, inclua a seguinte declaração de política para que sua função possa invocar a operação da `CreateCampaign` API. 

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "kms:GenerateDataKey*",
                "kms:Decrypt"
            ],
            "Resource": [
                "arn:aws:kms:us-east-1:111122223333:key/KMS_KEY_ID"
            ]
        }
    ]
}
```

------

# Expressões lógicas para campanhas AWS de IoT FleetWise
<a name="logical-expression"></a>

AWS A IoT FleetWise usa uma expressão lógica para reconhecer quais dados coletar como parte de uma campanha. Para ter mais informações sobre expressões, consulte [Expressões](https://docs.aws.amazon.com/iotevents/latest/developerguide/iotevents-expressions.html) no *Guia do desenvolvedor do AWS IoT Events *.

A variável de expressão deve ser construída de acordo com as regras do tipo de dados que estão sendo coletados. Para dados do sistema de telemetria, a variável de expressão deve ser o nome totalmente qualificado do sinal. Para dados de sistemas de visão, a expressão combina o nome totalmente qualificado do sinal com o caminho que vai do tipo de dados do sinal até uma de suas propriedades.

Por exemplo, se o catálogo de sinais contém os seguintes nós:

```
{
    myVehicle.ADAS.Camera:
    type: sensor
    datatype: Vehicle.ADAS.CameraStruct
    description: "A camera sensor"

    myVehicle.ADAS.CameraStruct:
    type: struct
    description: "An obstacle detection camera output struct"
}
```

Se os nós seguem a definição do ROS 2: 

```
{
    Vehicle.ADAS.CameraStruct.msg:
    boolean obstaclesExists
    uint8[] image
    Obstacle[30] obstacles
}
{
    Vehicle.ADAS.Obstacle.msg:
    float32: probability
    uint8 o_type
    float32: distance
}
```

Estas são todas as variáveis possíveis de expressão de eventos:

```
{
...
    $variable.`myVehicle.ADAS.Camera.obstaclesExists`
    $variable.`myVehicle.ADAS.Camera.Obstacle[0].probability`
    $variable.`myVehicle.ADAS.Camera.Obstacle[1].probability`
...
    $variable.`myVehicle.ADAS.Camera.Obstacle[29].probability`
    $variable.`myVehicle.ADAS.Camera.Obstacle[0].o_type`
    $variable.`myVehicle.ADAS.Camera.Obstacle[1].o_type`
...
    $variable.`myVehicle.ADAS.Camera.Obstacle[29].o_type`
    $variable.`myVehicle.ADAS.Camera.Obstacle[0].distance`
    $variable.`myVehicle.ADAS.Camera.Obstacle[1].distance`
...
    $variable.`myVehicle.ADAS.Camera.Obstacle[29].distance`
}
```