Crie um manifesto AWS do decodificador de IoT FleetWise - AWS IoT FleetWise

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 um manifesto AWS do decodificador de IoT FleetWise

Você pode usar o FleetWise console de AWS IoT ou criar um API manifesto de decodificador para o modelo do seu veículo.

Importante

Você deve ter um modelo de veículo antes de poder criar um manifesto do decodificador. Cada manifesto do decodificador deve estar associado a um modelo de veículo. Para obter mais informações, consulte Crie um modelo de AWS veículo de IoT FleetWise .

Criar um manifesto do decodificador (console)

Você pode usar o FleetWise console de AWS IoT para criar um manifesto do decodificador associado ao modelo do seu veículo.

Importante

Você não pode configurar sinais de dados do sistema de visão em manifestos de decodificadores usando o console de IoT AWS . FleetWise Use a AWS CLI em vez disso. O recurso de dados de sistemas de visão está na versão de teste e está sujeito a alterações.

Para criar um manifesto do decodificador
  1. Navegue até o console AWS de IoT. FleetWise

  2. No painel de navegação, selecione Modelos de veículos.

  3. Selecione o modelo de veículo de destino.

  4. Na página de resumo do modelo do veículo, selecione Criar manifesto do decodificador e faça o seguinte.

Etapa 1: configurar o manifesto do decodificador

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

  1. Insira um nome exclusivo para o manifesto do decodificador.

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

  3. Escolha Próximo.

Etapa 2: adicionar interfaces de rede

Cada manifesto do decodificador deve ter pelo menos uma interface de rede. Você pode adicionar várias interfaces de rede a um manifesto do decodificador.

Adicionar uma interface de rede
  • Em Interface de rede, faça o seguinte.

    1. Para o tipo de interface de rede, escolha CAN_ INTERFACE ou OBD_ INTERFACE.

    2. Insira um nome exclusivo para sua interface de rede.

    3. Insira um ID de interface de rede exclusivo. Você pode usar o ID gerado pela AWS IoT FleetWise.

    4. Selecione um ou mais sinais especificados no modelo do seu veículo para emparelhar com sinais do decodificador.

    5. Para fornecer informações de decodificação, faça upload de um arquivo .dbc. AWS A IoT FleetWise analisa o arquivo.dbc para recuperar sinais do decodificador.

    6. Na seção Sinais emparelhados, verifique se cada sinal está emparelhado com um sinal de decodificador.

    7. Escolha Próximo.

nota
  • Você pode carregar apenas um arquivo .dbc para cada interface de rede.

  • Verifique se cada sinal especificado no modelo do seu veículo está emparelhado com um sinal de decodificador.

  • Depois de optar por adicionar outra interface de rede, você não poderá editar aquela que está editando. Você pode excluir as interfaces de rede existentes.

Etapa 3: revisar e criar

Verifique as configurações do manifesto do decodificador e selecione Criar.

Criar um manifesto do decodificador (AWS CLI)

Você pode usar a CreateDecoderManifestAPIoperação para criar manifestos do decodificador. O exemplo a seguir usa a AWS CLI.

Para criar um manifesto do decodificador, execute o seguinte comando.

Substituir decoder-manifest-configuration com o nome do JSON arquivo que contém a configuração.

aws iotfleetwise create-decoder-manifest --cli-input-json file://decoder-manifest-configuration.json
  • Substituir decoder-manifest-name com o nome do manifesto do decodificador que você está criando.

  • Substituir vehicle-model-ARN com o Amazon Resource Name (ARN) do modelo do veículo.

  • (Opcional) Substituir description com uma descrição para ajudá-lo a identificar o manifesto do decodificador.

Para obter mais informações sobre como configurar ramificações, atributos, sensores e atuadores, consulte Configurar interfaces de FleetWise rede AWS de IoT e sinais de decodificador.

{ "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" } ] }
  • Substituir decoder-manifest-name com o nome do manifesto do decodificador que você está criando.

  • Substituir vehicle-model-ARN com o Amazon Resource Name (ARN) do modelo do veículo.

  • (Opcional) Substituir description com uma descrição para ajudá-lo a identificar o manifesto do decodificador.

A ordem dos nós de propriedade dentro de uma estrutura (struct) deve permanecer consistente conforme definido no catálogo de sinais e no modelo do veículo (manifesto do modelo). Para obter mais informações sobre como configurar ramificações, atributos, sensores e atuadores, consulte Configurar interfaces de FleetWise rede AWS de IoT e sinais de decodificador.

{ "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" } } } ] } } } ] }
nota

Você pode baixar um script de demonstração para criar um manifesto do decodificador com sinais de sistemas de visão. Para ter mais informações, consulte o Vision System Data Developer Guide.

O recurso de dados de sistemas de visão está na versão de teste e está sujeito a alterações.