aplicação de demonstração do AWS IoT Greengrass Discovery V1 - FreeRTOS

aplicação de demonstração do AWS IoT Greengrass Discovery V1

Importante

Essa demonstração está hospedada no repositório Amazon-FreeRTOS, que está preterido. Recomendamos começar aqui ao criar um novo projeto. Se você já tem um projeto FreeRTOS existente baseado no repositório Amazon-FreeRTOS que está preterido, consulte o Guia de migração do repositório Github do Amazon FreeRTOS.

Antes de executar a demonstração do AWS IoT Greengrass Discovery para FreeRTOS, é necessário configurar a AWS, o AWS IoT Greengrass, e o AWS IoT. Paga configurar a AWS, siga as instruções em Configuração das permissões e da conta da AWS. Para configurar o AWS IoT Greengrass, é necessário criar um grupo do Greengrass e adicionar um núcleo do Greengrass. Para obter mais informações sobre a configuração do AWS IoT Greengrass, consulte Conceitos básicos do AWS IoT Greengrass.

Depois de configurar a AWS e o AWS IoT Greengrass, será necessário configurar algumas permissões adicionais para o AWS IoT Greengrass.

Para configurar permissões do AWS IoT Greengrass
  1. Navegue até o console do IAM.

  2. No painel de navegação, selecione Roles (Funções_ e, então, procure e selecione Greengrass_ServiceRole.

  3. Selecione Attach policies (Anexar políticas), selecione AmazonS3FullAccess e AWSIoTFullAccess e selecione Attach policy (Anexar política).

  4. Navegue até o console do AWS IoT.

  5. No painel de navegação, selecione Greengrass, selecione Groups (Grupos) e selecione o grupo do Greengrass criado anteriormente.

  6. Selecione Settings (Configurações) e Add role (Adicionar função).

  7. Selecione Greengrass_ServiceRole e Save (Salvar).

Conecte a placa do AWS IoT e configure a demonstração do FreeRTOS.

  1. Registro da placa MCU com AWS IoT

    Depois de registrar a placa, será necessário criar e anexar uma nova política do Greengrass ao certificado do dispositivo.

    Para criar uma política do AWS IoT Greengrass
    1. Navegue até o console do AWS IoT.

    2. No painel de navegação, escolha Secure (Seguro), Policies (Políticas) e Create (Criar).

    3. Insira um nome para identificar a política.

    4. Na seção Add statements (Adicionar instruções), escolha Advanced mode (Modo avançado). Copie e cole o seguinte JSON na janela do editor de política:

      { "Effect": "Allow", "Action": [ "greengrass:*" ], "Resource": "*" }

      Essa política concede permissões ao AWS IoT Greengrass para todos os recursos.

    5. Escolha Criar.

    Para anexar a política do AWS IoT Greengrass ao certificado do dispositivo
    1. Navegue até o console do AWS IoT.

    2. No painel de navegação, selecione Manage (Gerenciar), selecione Things (Coisas) e selecione a coisa criada anteriormente.

    3. Selecione Security (Segurança) e selecione o certificado anexado ao dispositivo.

    4. Selecione Policies (Políticas), selecione Actions (Ações) e selecione Attach Policy (Anexar política).

    5. Encontre e selecione a política do Greengrass criada anteriormente e selecione Attach (Anexar).

  2. Fazer download do FreeRTOS

    nota

    Se você estiver fazendo download do FreeRTOS, a partir do console dele, escolha Conectar-se ao AWS IoT Greengrass – Plataforma em vez de Conectar-se ao AWS IoT – Plataforma.

  3. Configuração das demonstrações do FreeRTOS.

    Abra freertos/vendors/vendor/boards/board/aws_demos/config_files/aws_demo_config.h, comente #define CONFIG_CORE_MQTT_MUTUAL_AUTH_DEMO_ENABLED e defina CONFIG_GREENGRASS_DISCOVERY_DEMO_ENABLED.

Depois de configurar a AWS IoT e o AWS IoT Greengrass, fazer o download e configurar o FreeRTOS, você poderá compilar, instalar e executar a demonstração do Greengrass no seu dispositivo. Para configurar o ambiente de desenvolvimento de hardware e software da placa, siga as instruções no Guias de conceitos básicos específicos da placa.

A demonstração do Greengrass publica uma série de mensagens no núcleo do Greengrass e no cliente MQTT da AWS IoT. Para visualizar as mensagens no cliente MQTT do AWS IoT, abra o console AWS IoT, selecione Testar, escolha cliente de teste MQTT e adicione uma assinatura a freertos/demos/ggd.

No cliente MQTT, você deve ver estas strings:

Message from Thing to Greengrass Core: Hello world msg #1! Message from Thing to Greengrass Core: Hello world msg #0! Message from Thing to Greengrass Core: Address of Greengrass Core found! 123456789012.us-west-2.compute.amazonaws.com

Uso de uma instância do Amazon EC2

Se você estiver trabalhando com uma instância do Amazon EC2
  1. Localize o DNS público (IPv4) associado à sua instância do Amazon EC2 – acesse o console do Amazon EC2 e, no painel de navegação esquerdo, escolha Instâncias. Escolha sua instância do Amazon EC2 e escolha o painel Descrição. Procure a entrada para o DNS público (IPv4) e anote-o.

  2. Localize a entrada para Grupos de segurança e escolha o grupo de segurança anexado à sua instância do Amazon EC2.

  3. Escolha a guia Regras de entrada e escolha Editar regras de entrada e adicione as seguintes regras.

    Regras de entrada
    Type Protocolo Intervalo de portas Origem Descrição (opcional)
    HTTP TCP 80 0.0.0.0/0 -
    HTTP TCP 80 ::/0 -
    SSH TCP 22 0.0.0.0/0 -
    TCP personalizado TCP 8883 0.0.0.0/0 Comunicações MQTT
    TCP personalizado TCP 8883 ::/0 Comunicações MQTT
    HTTPS TCP 443 0.0.0.0/0 -
    HTTPS TCP 443 ::0/0 -
    Todos os ICMP - IPv4 ICMP Todos 0.0.0.0/0 -
    Todos os ICMP - IPv4 ICMP Todos ::0/0 -
  4. No console do AWS IoT, escolha Greengrass, Grupos e escolha o grupo do Greengrass criado anteriormente. Escolha Settings. Altere a Detecção de conexão local para Gerenciar manualmente as informações de conexão.

  5. No painel de navegação, escolha Núcleos e selecione o núcleo do grupo.

  6. Escolha Conectividade e verifique se você tem somente um endpoint principal (exclua todos os outros) e se ele não é um endereço IP (porque está sujeito a alterações). A melhor opção é usar o DNS público (IPv4) anotado na primeira etapa.

  7. Adicione a coisa da IoT do FreeRTOS criada para o grupo do GG.

    1. Escolha a seta para trás para retornar à página do grupo do AWS IoT Greengrass. No painel de navegação, escolha Dispositivos e Adicionar dispositivo.

    2. Escolha Selecionar uma coisa da IoT. Escolha o dispositivo e escolha Concluir.

  8. Adicione as assinaturas necessárias na página Grupo do Greengrass, escolha Assinaturas, escolha Adicionar assinatura e insira as informações conforme mostrado aqui.

    Assinaturas
    Origem Alvo Tópico
    TIGG1 IoT Cloud freertos/demos/ggd

    Onde "Fonte" é o nome dado à coisa do AWS IoT criada no console do AWS IoT quando você registrou sua placa - "TIGG1" no exemplo dado aqui.

  9. Inicie uma implantação do seu grupo do AWS IoT Greengrass e verifique se a implantação foi bem-sucedida. Agora, você deve conseguir executar com êxito a demonstração do AWS IoT Greengrass Discovery.