Tutorial: Usar a AWS IoT Device SDK para C incorporado - AWS IoT Core

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

Tutorial: Usar a AWS IoT Device SDK para C incorporado

Esta seção descreve como executar o AWS IoT Device SDK para C incorporado.

Etapa 1: instalar a AWS IoT Device SDK para C incorporado

Em geral, o AWS IoT Device SDK para C incorporado destina-se a dispositivos com restrição de recursos que exigem um runtime de linguagem C otimizado. É possível usar o SDK em qualquer sistema operacional e hospedá-lo em qualquer tipo de processador (p. ex., MCUs e MPUs). Se você tiver mais memória e recursos de processamento disponíveis, recomendamos usar um dos SDKs de dispositivos e dispositivos móveis do AWS IoT de ordem superior (por exemplo, C++, Java, JavaScript e Python).

Em geral, o AWS IoT Device SDK para C incorporado destina-se a sistemas que usam MCUs ou MPUs low-end que executam sistemas operacionais incorporados. Para o exemplo de programação nesta seção, presumimos que o dispositivo usa Linux.

exemplo
  1. Faça o download de AWS IoT Device SDK para C incorporado para o dispositivo no GitHub.

    git clone https://github.com/aws/aws-iot-device-sdk-embedded-c.git --recurse-submodules

    Isso cria um diretório chamado aws-iot-device-sdk-embedded-c no diretório atual.

  2. Navegue até esse diretório e confira a versão mais recente. Consulte github.com/aws/aws-iot-device-sdk-embedded-C/tags para ver a tag de lançamento mais recente.

    cd aws-iot-device-sdk-embedded-c git checkout latest-release-tag
  3. Instale o OpenSSL versão 1.1.0 ou posterior. As bibliotecas de desenvolvimento do OpenSSL geralmente são chamadas de “libssl-dev” ou “openssl-devel” quando instaladas por meio de um gerenciador de pacotes.

    sudo apt-get install libssl-dev

Etapa 2: configurar uma aplicação de amostra

O AWS IoT Device SDK para C incorporado inclui aplicativos de exemplo para você experimentar. Para simplificar, este tutorial usa a aplicação mqtt_demo_mutual_auth, que ilustra como se conectar ao agente de mensagens do AWS IoT Core e assinar e publicar em tópicos MQTT.

  1. Copie o certificado e a chave privada que você criou em Introdução aos AWS IoT Core tutoriais no diretório build/bin/certificates.

    nota

    Os certificados CA raiz e de dispositivo estão sujeitos a expiração ou revogação. Se esses certificados expirarem ou forem revogados, você deverá copiar um novo certificado da CA ou uma chave privada e um certificado do dispositivo no dispositivo.

  2. É necessário configurar o exemplo com sua chave privada, certificado, certificado CA raiz e endpoint pessoal do AWS IoT Core. Navegue até o diretório aws-iot-device-sdk-embedded-c/demos/mqtt/mqtt_demo_mutual_auth.

    Se você tiver a AWS CLI instalada, será possível usar o comando para localizar o URL do endpoint da sua conta.

    aws iot describe-endpoint --endpoint-type iot:Data-ATS

    Se você não tiver a AWS CLI instalada, abra o console do AWS IoT. No painel de navegação, escolha Gerenciar e Objetos. Escolha o objeto de IoT para o dispositivo e escolha Interagir. Seu endpoint é exibido na seção HTTPS da página de detalhes do objeto.

  3. Abra o arquivo demo_config.h e atualize os valores para o seguinte:

    AWS_IOT_ENDPOINT

    Seu endpoint pessoal.

    CLIENT_CERT_PATH

    O caminho do arquivo de certificado, por exemplo certificates/device.pem.crt".

    CLIENT_PRIVATE_KEY_PATH

    O nome do arquivo de chave privada, por exemplo certificates/private.pem.key.

    Por exemplo:

    // Get from demo_config.h // ================================================= #define AWS_IOT_ENDPOINT "my-endpoint-ats.iot.us-east-1.amazonaws.com" #define AWS_MQTT_PORT 8883 #define CLIENT_IDENTIFIER "testclient" #define ROOT_CA_CERT_PATH "certificates/AmazonRootCA1.crt" #define CLIENT_CERT_PATH "certificates/my-device-cert.pem.crt" #define CLIENT_PRIVATE_KEY_PATH "certificates/my-device-private-key.pem.key" // =================================================
  4. Verifique se você tem a CMake instalada no dispositivo usando este comando.

    cmake --version

    Se vir as informações de versão para o compilador, você poderá continuar para a próxima seção.

    Se receber um erro ou não vir nenhuma informação, você deverá instalar o pacote cmake usando este comando.

    sudo apt-get install cmake

    Execute o comando cmake --version novamente e confirme se a CMake foi instalada e que você está pronto para continuar.

  5. Verifique se você tem as ferramentas de desenvolvimento instaladas em seu dispositivo usando este comando.

    gcc --version

    Se vir as informações de versão para o compilador, você poderá continuar para a próxima seção.

    Se receber um erro ou não vir nenhuma informação do compilador, você deverá instalar o pacote build-essential usando este comando.

    sudo apt-get install build-essential

    Execute o comando gcc --version novamente e confirme se as ferramentas de compilação foram instaladas e que você está pronto para continuar.

Etapa 3: criar e executar a aplicação de exemplo

Este procedimento explica como gerar a aplicação mqtt_demo_mutual_auth em seu dispositivo e conectá-la ao console de AWS IoT usando o AWS IoT Device SDK para C incorporado.

Como executar os aplicativos de exemplo do AWS IoT Device SDK para C incorporado
  1. Navegue até aws-iot-device-sdk-embedded-c e crie um diretório de compilação.

    mkdir build && cd build
  2. Insira o comando CMake a seguir para gerar os arquivos de Makefiles necessários para compilação.

    cmake ..
  3. Digite o comando a seguir para compilar o arquivo de aplicação executável.

    make
  4. Execute o aplicativo mqtt_demo_mutual_auth com este comando.

    cd bin ./mqtt_demo_mutual_auth

    Você deve ver uma saída semelhante a:

    Saída de linha de comando para executar a aplicação de amostra AWS IoT Device SDK para C incorporado.

O dispositivo está conectado à AWS IoT agora usando o AWS IoT Device SDK para C incorporado.

Também é possível usar o console da AWS IoT para visualizar as mensagens MQTT que a aplicação de exemplo está publicando. Para obter informações sobre como usar o cliente MQTT no console do AWS IoT, consulte Exibir mensagens MQTT com o cliente AWS IoT MQTT.