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
-
Navegue até o console do IAM
. -
No painel de navegação, selecione Roles (Funções_ e, então, procure e selecione Greengrass_ServiceRole.
-
Selecione Attach policies (Anexar políticas), selecione AmazonS3FullAccess e AWSIoTFullAccess e selecione Attach policy (Anexar política).
-
Navegue até o console do AWS IoT
. -
No painel de navegação, selecione Greengrass, selecione Groups (Grupos) e selecione o grupo do Greengrass criado anteriormente.
-
Selecione Settings (Configurações) e Add role (Adicionar função).
-
Selecione Greengrass_ServiceRole e Save (Salvar).
Conecte a placa do AWS IoT e configure a demonstração do FreeRTOS.
-
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
-
Navegue até o console do AWS IoT
. -
No painel de navegação, escolha Secure (Seguro), Policies (Políticas) e Create (Criar).
-
Insira um nome para identificar a política.
-
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.
-
Escolha Criar.
Para anexar a política do AWS IoT Greengrass ao certificado do dispositivo
-
Navegue até o console do AWS IoT
. -
No painel de navegação, selecione Manage (Gerenciar), selecione Things (Coisas) e selecione a coisa criada anteriormente.
-
Selecione Security (Segurança) e selecione o certificado anexado ao dispositivo.
-
Selecione Policies (Políticas), selecione Actions (Ações) e selecione Attach Policy (Anexar política).
-
Encontre e selecione a política do Greengrass criada anteriormente e selecione Attach (Anexar).
-
-
nota
Se você estiver fazendo download do FreeRTOS, a partir do console dele, escolha Conectar-se ao AWS IoT Greengrass –
Plataformaem vez de Conectar-se ao AWS IoT –Plataforma. -
Configuração das demonstrações do FreeRTOS.
Abra
, comentefreertos/vendors/vendor/boards/board/aws_demos/config_files/aws_demo_config.h#define CONFIG_CORE_MQTT_MUTUAL_AUTH_DEMO_ENABLEDe definaCONFIG_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 IoTfreertos/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
-
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.
-
Localize a entrada para Grupos de segurança e escolha o grupo de segurança anexado à sua instância do Amazon EC2.
-
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 - -
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.
-
No painel de navegação, escolha Núcleos e selecione o núcleo do grupo.
-
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.
-
Adicione a coisa da IoT do FreeRTOS criada para o grupo do GG.
-
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.
-
Escolha Selecionar uma coisa da IoT. Escolha o dispositivo e escolha Concluir.
-
-
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.
-
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.