Detecção de anomalias em equipamentos com o Amazon Lookout for Equipment - AWS IoT SiteWise

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á.

Detecção de anomalias em equipamentos com o Amazon Lookout for Equipment

nota

A detecção de anomalias só está disponível nas regiões em que o Amazon Lookout for Equipment está disponível.

Você pode se integrar AWS IoT SiteWise ao Amazon Lookout for Equipment para obter informações sobre seu equipamento industrial por meio da detecção de anomalias e da manutenção preditiva de equipamentos industriais. O Lookout for Equipment é um serviço de aprendizado de máquina (ML) para monitorar equipamentos industriais que detecta o comportamento anormal do equipamento e identifica possíveis falhas. Com o Lookout for Equipment, você pode implementar programas de manutenção preditiva e identificar processos de equipamentos abaixo do ideal. Para obter mais informações sobre o Lookout for Equipment, consulte O que é o Amazon Lookout for Equipment? no Guia do usuário do Amazon Lookout for Equipment.

Quando você cria uma previsão para treinar um modelo de ML para detectar o comportamento anômalo do equipamento, AWS IoT SiteWise envia os valores das propriedades do ativo para a Lookout for Equipment para treinar um modelo de ML para detectar o comportamento anômalo do equipamento. Para definir uma definição de previsão em um modelo de ativo, você especifica as funções do IAM necessárias para que a Lookout for Equipment acesse seus dados e as propriedades para enviar à Lookout for Equipment e enviar dados processados para o Amazon S3. Para ter mais informações, consulte Criar modelos de ativo.

Para integrar AWS IoT SiteWise o Lookout for Equipment, você executará as seguintes etapas de alto nível:

  • Adicione uma definição de previsão em um modelo de ativo que descreva quais propriedades você deseja rastrear. A definição de previsão é uma coleção reutilizável de medições, transformações e métricas que é usada para criar previsões sobre os ativos com base nesse modelo de ativo.

  • Treine a previsão com base nos dados históricos que você fornece.

  • Inferência de cronograma, que AWS IoT SiteWise informa com que frequência executar uma previsão específica.

Depois que a inferência é programada, o modelo Lookout for Equipment monitora os dados que recebe do seu equipamento e procura anomalias no comportamento do equipamento. Você pode visualizar e analisar os resultados no SiteWise Monitor, usando as operações da API AWS IoT SiteWise GET ou o console Lookout for Equipment. Você também pode criar alarmes usando detectores de alarme do modelo de ativos para alertá-lo sobre o comportamento anormal do equipamento.

Adicionando uma definição de previsão (console)

Para começar a enviar dados coletados pela AWS IoT SiteWise Lookout for Equipment, você deve adicionar AWS IoT SiteWise uma definição de previsão a um modelo de ativo.

Para adicionar uma definição de previsão a um modelo AWS IoT SiteWise de ativo
  1. Navegue até o console do AWS IoT SiteWise.

  2. No painel de navegação, escolha Modelos e selecione o modelo de ativo ao qual você deseja adicionar a definição de previsão.

  3. Escolha Previsões.

  4. Escolha Adicionar definição de predição.

  5. Defina detalhes sobre a definição da previsão.

    1. Insira um nome exclusivo e uma descrição para sua definição de previsão. Escolha o nome cuidadosamente, pois depois de criar a definição de previsão, você não poderá alterar o nome dela.

    2. Crie ou selecione uma função de permissões do IAM que permita AWS IoT SiteWise compartilhar seus dados de ativos com o Amazon Lookout for Equipment. A função deve ter as seguintes políticas de IAM e confiança. Para obter ajuda na criação da função, consulte Criação de uma função usando políticas de confiança personalizadas (console).

      Política do IAM

      { "Version": "2012-10-17", "Statement": [{ "Sid": "L4EPermissions", "Effect": "Allow", "Action": [ "lookoutequipment:CreateDataset", "lookoutequipment:CreateModel", "lookoutequipment:CreateInferenceScheduler", "lookoutequipment:DescribeDataset", "lookoutequipment:DescribeModel", "lookoutequipment:DescribeInferenceScheduler", "lookoutequipment:ListInferenceExecutions", "lookoutequipment:StartDataIngestionJob", "lookoutequipment:StartInferenceScheduler", "lookoutequipment:UpdateInferenceScheduler", "lookoutequipment:StopInferenceScheduler" ], "Resource": [ "arn:aws:lookoutequipment:Region:Account_ID:inference-scheduler/IoTSiteWise_*", "arn:aws:lookoutequipment:Region:Account_ID:model/IoTSiteWise_*", "arn:aws:lookoutequipment:Region:Account_ID:dataset/IoTSiteWise_*" ] }, { "Sid": "L4EPermissions2", "Effect": "Allow", "Action": [ "lookoutequipment:DescribeDataIngestionJob" ], "Resource": "*" }, { "Sid": "S3Permissions", "Effect": "Allow", "Action": [ "s3:CreateBucket", "s3:ListBucket", "s3:PutObject", "s3:GetObject" ], "Resource": ["arn:aws:s3:::iotsitewise-*"] }, { "Sid": "IAMPermissions", "Effect": "Allow", "Action": [ "iam:GetRole", "iam:PassRole" ], "Resource": "arn:aws:iam::Account_ID:role/Role_name" } ] }

      Política de confiança

      { "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Principal": { "Service": "iotsitewise.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "Account_ID" }, "ArnEquals": { "aws:SourceArn": "arn:aws:iotsitewise:Region:Account_ID:asset/*" } } }, { "Effect": "Allow", "Principal": { "Service": "lookoutequipment.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "Account_ID" }, "ArnEquals": { "aws:SourceArn": "arn:aws:lookoutequipment:Region:Account_ID:*" } } } ] }
    3. Selecione Next (Próximo).

  6. Selecione os atributos de dados (medidas, transformações e métricas) que você deseja enviar para a Lookout for Equipment.

    1. (Opcional) Selecione as medidas.

    2. (Opcional) Selecione as transformações.

    3. (Opcional) Selecione métricas.

    4. Selecione Next (Próximo).

  7. Revise suas seleções. Para adicionar a definição de previsão ao modelo de ativo, na página de resumo, escolha Adicionar definição de previsão.

Você também pode editar ou excluir uma definição de predição existente que tenha previsões ativas anexadas.

Treinando uma previsão (console)

Depois de adicionar uma definição de previsão a um modelo de ativo, você pode treinar as previsões que estão em seus ativos.

Para treinar uma previsão em AWS IoT SiteWise
  1. Navegue até o console do AWS IoT SiteWise.

  2. No painel de navegação, escolha Ativos e selecione o ativo que você deseja monitorar.

  3. Escolha Previsões.

  4. Selecione as previsões que você deseja treinar.

  5. Em Ações, escolha Iniciar treinamento e faça o seguinte:

    1. Em Detalhes da previsão, selecione uma função de permissões do IAM que permita AWS IoT SiteWise compartilhar seus dados de ativos com o Lookout for Equipment. Se você precisar criar uma nova função, escolha Criar uma nova função.

    2. Em Configurações de dados de treinamento, insira um intervalo de tempo de dados de treinamento para selecionar quais dados usar para treinar a previsão.

    3. (Opcional) Selecione a taxa de amostragem dos dados após o pós-processamento.

    4. (Opcional) Para rótulos de dados, forneça um bucket e um prefixo do Amazon S3 que contenham seus dados de rotulagem. Para obter mais informações sobre rotulagem de dados, consulte Como rotular seus dados no Guia do usuário do Amazon Lookout for Equipment.

    5. Selecione Next (Próximo).

  6. (Opcional) Se você quiser que a previsão fique ativa assim que o treinamento for concluído, em Configurações avançadas, selecione Ativar automaticamente a previsão após o treinamento e faça o seguinte:

    1. Em Dados de entrada, em Frequência de upload de dados, defina com que frequência os dados são carregados e, em Tempo de atraso de compensação, defina a quantidade de buffer a ser usada.

    2. Selecione Next (Próximo).

  7. Revise os detalhes da previsão e escolha Salvar e começar.

Iniciando ou interrompendo a inferência sobre uma previsão (console)

nota

As cobranças do Lookout for Equipment se aplicam a inferências programadas com os dados transferidos AWS IoT SiteWise entre o Lookout for Equipment e o Lookout for Equipment. Para obter mais informações, consulte os preços do Amazon Lookout for Equipment.

Se você adicionou uma previsão b"lookoutequipment: CreateDataset “, mas não optou por ativá-la após o treinamento, você deve ativá-la para que ela comece a monitorar seus ativos.

Para iniciar a inferência para uma previsão
  1. Navegue até o console do AWS IoT SiteWise.

  2. No painel de navegação, escolha Ativos e selecione o ativo ao qual a previsão é adicionada.

  3. Escolha Previsões.

  4. Selecione as previsões que você deseja ativar.

  5. Em Ações, escolha Iniciar inferência e faça o seguinte:

    1. Em Dados de entrada, em Frequência de upload de dados, defina com que frequência os dados são carregados e, em Tempo de atraso de compensação, defina a quantidade de buffer a ser usada.

    2. Escolha Salvar e começar.

Para interromper a inferência de uma previsão
  1. Navegue até o console do AWS IoT SiteWise.

  2. No painel de navegação, escolha Ativos e selecione o ativo ao qual a previsão é adicionada.

  3. Escolha Previsões.

  4. Selecione as previsões que você deseja interromper.

  5. Em Ações, escolha Parar inferência.

Adicionando uma definição de previsão (CLI)

Para definir uma definição de previsão em um modelo de ativo novo ou existente, você pode usar o AWS Command Line Interface (AWS CLI). Depois de definir a definição de previsão no modelo de ativo, você treina e programa a inferência para uma previsão em um ativo AWS IoT SiteWise para fazer a detecção de anomalias com o Lookout for Equipment.

Pré-requisitos

Para concluir essas etapas, você deve ter um modelo de ativo e pelo menos um ativo criado. Para obter mais informações, consulte Criação de um modelo de ativo (AWS CLI) e Criação de um ativo (AWS CLI).

Se você é novato AWS IoT SiteWise, deve chamar a operação de CreateBulkImportJob API para importar valores de propriedades de ativos AWS IoT SiteWise, que serão usados para treinar o modelo. Para ter mais informações, consulte Criar um trabalho de importação em massa (AWS CLI).

Para adicionar uma definição de previsão
  1. Crie um arquivo chamado asset-model-payload.json. Siga as etapas nessas outras seções para adicionar os detalhes do seu modelo de ativo para o arquivo, mas não envie a solicitação para criar ou atualizar o modelo de ativo.

  2. Adicione um modelo composto da Lookout for Equipment assetModelCompositeModels () ao modelo de ativo adicionando o código a seguir.

    • PropertySubstitua pela ID das propriedades que você deseja incluir. Para obter essas identidades, ligue DescribeAssetModel.

    • RoleARNSubstitua pelo ARN de uma função do IAM que permite que a Lookout for Equipment acesse seus dados. AWS IoT SiteWise

    { ... "assetModelCompositeModels": [ { "name": "L4Epredictiondefinition", "type": "AWS/L4E_ANOMALY", "properties": [ { "name": "AWS/L4E_ANOMALY_RESULT", "dataType": "STRUCT", "dataTypeSpec": "AWS/L4E_ANOMALY_RESULT", "unit": "none", "type": { "measurement": {} } }, { "name": "AWS/L4E_ANOMALY_INPUT", "dataType": "STRUCT", "dataTypeSpec": "AWS/L4E_ANOMALY_INPUT", "type": { "attribute": { "defaultValue": "{\"properties\": [\"Property1\", \"Property2\"]}" } } }, { "name": "AWS/L4E_ANOMALY_PERMISSIONS", "dataType": "STRUCT", "dataTypeSpec": "AWS/L4E_ANOMALY_PERMISSIONS", "type": { "attribute": { "defaultValue": "{\"roleArn\": \"RoleARN\"}" } } }, { "name": "AWS/L4E_ANOMALY_DATASET", "dataType": "STRUCT", "dataTypeSpec": "AWS/L4E_ANOMALY_DATASET", "type": { "attribute": {} } }, { "name": "AWS/L4E_ANOMALY_MODEL", "dataType": "STRUCT", "dataTypeSpec": "AWS/L4E_ANOMALY_MODEL", "type": { "attribute": {} } }, { "name": "AWS/L4E_ANOMALY_INFERENCE", "dataType": "STRUCT", "dataTypeSpec": "AWS/L4E_ANOMALY_INFERENCE", "type": { "attribute": {} } }, { "name": "AWS/L4E_ANOMALY_TRAINING_STATUS", "dataType": "STRUCT", "dataTypeSpec": "AWS/L4E_ANOMALY_TRAINING_STATUS", "type": { "attribute": { "defaultValue": "{}" } } }, { "name": "AWS/L4E_ANOMALY_INFERENCE_STATUS", "dataType": "STRUCT", "dataTypeSpec": "AWS/L4E_ANOMALY_INFERENCE_STATUS", "type": { "attribute": { "defaultValue": "{}" } } } ] }
  3. Crie o modelo de ativo ou atualize o modelo de ativo existente. Execute um destes procedimentos:

    • Para criar o modelo de ativo, execute o seguinte comando:

      aws iotsitewise create-asset-model --cli-input-json file://asset-model-payload.json
    • Para atualizar o modelo de ativo existente, execute o comando a seguir. asset-model-idSubstitua pela ID do modelo de ativo que você deseja atualizar.

      aws iotsitewise update-asset-model \ --asset-model-id asset-model-id \ --cli-input-json file://asset-model-payload.json

Depois de executar o comando, observe o assetModelId na resposta.

Treinando uma previsão e iniciando a inferência (CLI)

Agora que a definição de previsão está definida, você pode treinar ativos com base nela e iniciar a inferência. Se você quiser treinar sua previsão, mas não iniciar a inferência, vá para. Treinando uma previsão (CLI) Para treinar a previsão e iniciar a inferência sobre o ativo, você precisará do recurso assetId de destino.

Para treinar e iniciar a inferência da previsão
  1. Execute o comando a seguir para encontrar o assetModelCompositeModelId abaixoassetModelCompositeModelSummaries. asset-model-idSubstitua pela ID do modelo de ativo que você criou emAtualizando um modelo de ativo ou componente (AWS CLI).

    aws iotsitewise describe-asset-model \ --asset-model-id asset-model-id \
  2. Execute o comando a seguir para encontrar a TrainingWithInference ação. actionDefinitionId asset-model-idSubstitua pela ID usada na etapa anterior e asset-model-composite-model-idsubstitua pela ID retornada na etapa anterior.

    aws iotsitewise describe-asset-model-composite-model \ --asset-model-id asset-model-id \ --asset-model-composite-model-id asset-model-composite-model-id \
  3. Crie um arquivo chamado train-start-inference-prediction.json e adicione o código a seguir, substituindo o seguinte:

    • asset-idcom o ID do ativo de destino

    • action-definition-idcom o ID da TrainingWithInference ação

    • StartTimecom o início dos dados de treinamento, fornecidos em segundos de época

    • EndTimecom o final dos dados de treinamento, fornecidos em segundos de época

    • TargetSamplingRatecom a taxa de amostragem dos dados após o pós-processamento pela Lookout for Equipment. Os valores permitidos são:PT1S | PT5S | PT10S | PT15S | PT30S | PT1M | PT5M | PT10M | PT15M | PT30M | PT1H.

    { "targetResource": { "assetId": "asset-id" }, "actionDefinitionId": "action-definition-Id", "actionPayload":{ "stringValue": "{\"l4ETrainingWithInference\":{\"trainingWithInferenceMode\":\"START\",\"trainingPayload\":{\"exportDataStartTime\":StartTime,\"exportDataEndTime\":EndTime},\"targetSamplingRate\":\"TargetSamplingRate\"},\"inferencePayload\":{\"dataDelayOffsetInMinutes\":0,\"dataUploadFrequency\":\"PT5M\"}}}" } }
  4. Execute o comando a seguir para iniciar o treinamento e a inferência:

    aws iotsitewise execute-action --cli-input-json file://train-start-inference-prediction.json

Treinando uma previsão (CLI)

Agora que a definição de previsão está definida, você pode treinar ativos com base nela. Para treinar a previsão do ativo, você precisará assetId do recurso de destino.

Para treinar a previsão
  1. Execute o comando a seguir para encontrar o assetModelCompositeModelId abaixoassetModelCompositeModelSummaries. asset-model-idSubstitua pela ID do modelo de ativo que você criou emAtualizando um modelo de ativo ou componente (AWS CLI).

    aws iotsitewise describe-asset-model \ --asset-model-id asset-model-id \
  2. Execute o comando a seguir para encontrar a Training ação. actionDefinitionId asset-model-idSubstitua pela ID usada na etapa anterior e asset-model-composite-model-idsubstitua pela ID retornada na etapa anterior.

    aws iotsitewise describe-asset-model-composite-model \ --asset-model-id asset-model-id \ --asset-model-composite-model-id asset-model-composite-model-id \
  3. Crie um arquivo chamado train-prediction.json e adicione o código a seguir, substituindo o seguinte:

    • asset-idcom o ID do ativo de destino

    • action-definition-idcom o ID da ação de treinamento

    • StartTimecom o início dos dados de treinamento, fornecidos em segundos de época

    • EndTimecom o final dos dados de treinamento, fornecidos em segundos de época

    • (Opcional) BucketName com o nome do bucket do Amazon S3 que contém seus dados de etiqueta

    • (Opcional) Prefix com o prefixo associado ao bucket do Amazon S3.

    • TargetSamplingRatecom a taxa de amostragem dos dados após o pós-processamento pela Lookout for Equipment. Os valores permitidos são:PT1S | PT5S | PT10S | PT15S | PT30S | PT1M | PT5M | PT10M | PT15M | PT30M | PT1H.

      nota

      Inclua o nome e o prefixo do bucket, ou nenhum deles.

    { "targetResource": { "assetId": "asset-id" }, "actionDefinitionId": "action-definition-Id", "actionPayload":{ "stringValue": "{\"l4ETraining\": {\"trainingMode\":\"START\",\"exportDataStartTime\": StartTime, \"exportDataEndTime\": EndTime, \"targetSamplingRate\":\"TargetSamplingRate\"}, \"labelInputConfiguration\": {\"bucketName\": \"BucketName\", \"prefix\": \"Prefix\"}}}" } }
  4. Execute o comando a seguir para iniciar o treinamento:

    aws iotsitewise execute-action --cli-input-json file://train-prediction.json

Antes de começar a inferência, o treinamento deve ser concluído. Para verificar o status do treinamento, faça o seguinte:

  • No console, navegue até o ativo em que a previsão está ativada.

  • A partir do AWS CLI, ligue BatchGetAssetPropertyValue usando o propertyId da trainingStatus propriedade.

Iniciando ou interrompendo a inferência sobre uma previsão (CLI)

Depois que a previsão for treinada, você poderá iniciar a inferência para fazer com que a Lookout for Equipment comece a monitorar seus ativos. Para iniciar ou interromper a inferência, você precisará do recurso assetId de destino.

Para iniciar a inferência
  1. Execute o comando a seguir para encontrar o assetModelCompositeModelId abaixoassetModelCompositeModelSummaries. asset-model-idSubstitua pela ID do modelo de ativo que você criou emAtualizando um modelo de ativo ou componente (AWS CLI).

    aws iotsitewise describe-asset-model \ --asset-model-id asset-model-id \
  2. Execute o comando a seguir para encontrar a Inference ação. actionDefinitionId asset-model-idSubstitua pela ID usada na etapa anterior e asset-model-composite-model-idsubstitua pela ID retornada na etapa anterior.

    aws iotsitewise describe-asset-model-composite-model \ --asset-model-id asset-model-id \ --asset-model-composite-model-id asset-model-composite-model-id \
  3. Crie um arquivo chamado start-inference.json e adicione o código a seguir, substituindo o seguinte:

    • asset-idcom o ID do ativo de destino

    • action-definition-idcom o ID da ação inicial de inferência

    • Offsetcom a quantidade de buffer a ser usada

    • Frequencycom a frequência com que os dados são carregados

    { "targetResource": { "assetId": "asset-id" }, "actionDefinitionId": "action-definition-Id", "actionPayload":{ "stringValue": "{\"l4EInference\": {\"inferenceMode\":\"START\",\"dataDelayOffsetInMinutes\": Offset, \"dataUploadFrequency\": \"Frequency\"}}" }}
  4. Execute o comando a seguir para iniciar a inferência:

    aws iotsitewise execute-action --cli-input-json file://start-inference.json
Para parar a inferência
  1. Execute o comando a seguir para encontrar o assetModelCompositeModelId abaixoassetModelCompositeModelSummaries. asset-model-idSubstitua pela ID do modelo de ativo que você criou emAtualizando um modelo de ativo ou componente (AWS CLI).

    aws iotsitewise describe-asset-model \ --asset-model-id asset-model-id \
  2. Execute o comando a seguir para encontrar a Inference ação. actionDefinitionId asset-model-idSubstitua pela ID usada na etapa anterior e asset-model-composite-model-idsubstitua pela ID retornada na etapa anterior.

    aws iotsitewise describe-asset-model-composite-model \ --asset-model-id asset-model-id \ --asset-model-composite-model-id asset-model-composite-model-id \
  3. Crie um arquivo chamado stop-inference.json e adicione o código a seguir, substituindo o seguinte:

    • asset-idcom o ID do ativo de destino

    • action-definition-idcom o ID da ação inicial de inferência

    { "targetResource": { "assetId": "asset-id" }, "actionDefinitionId": "action-definition-Id", "actionPayload":{ "stringValue": "{\"l4EInference\":{\"inferenceMode\":\"STOP\"}}" }}
  4. Execute o comando a seguir para interromper a inferência:

    aws iotsitewise execute-action --cli-input-json file://stop-inference.json