チュートリアル: の使用 AWS IoT Device SDK for Embedded C - AWS IoT Core

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

チュートリアル: の使用 AWS IoT Device SDK for Embedded C

このセクションでは、 を実行する方法について説明します AWS IoT Device SDK for Embedded C。

Step1: をインストールする AWS IoT Device SDK for Embedded C

は通常 AWS IoT Device SDK for Embedded C 、最適化された C 言語ランタイムを必要とするリソース制約のあるデバイスを対象としています。この SDK は、任意のオペレーティングシステムで使用でき、任意のプロセッサタイプ (MCU や MPU など) でホストできます。使用可能なメモリと処理リソースが多い場合は、上位の AWS IoT Device SDKs (C++、Java JavaScript、Python など) のいずれかを使用することをお勧めします。

一般に、 AWS IoT Device SDK for Embedded C は、組み込みオペレーティングシステムを実行する MCUsまたは低エンド MPUs を使用するシステムを対象としています。このセクションのプログラミング例では、ご利用のデバイスが Linux を使用していると仮定しています。

  1. から AWS IoT Device SDK for Embedded C をデバイスにダウンロードしますGitHub

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

    これにより、現在のディレクトリに aws-iot-device-sdk-embedded-c という名前のディレクトリが作成されます。

  2. そのディレクトリに移動し、最新のリリースを確認します。最新のリリースタグについては、github.com/aws/aws-iot-device-sdk-embedded-C/tags を参照してください。

    cd aws-iot-device-sdk-embedded-c git checkout latest-release-tag
  3. OpenSSL バージョン 1.1.0 以降をインストールします。OpenSSL 開発ライブラリは、通常、パッケージマネージャーを介してインストールされた場合、「libssl-dev」または「openssl-devel」と呼ばれます。

    sudo apt-get install libssl-dev

ステップ 2: サンプルアプリケーションを設定する

AWS IoT Device SDK for Embedded C には、試すサンプルアプリケーションが含まれています。このチュートリアルでは、わかりやすいように、 AWS IoT Core メッセージブローカーに接続し、MQTT トピックにサブスクライブして発行する方法を示す mqtt_demo_mutual_authアプリケーションを使用します。

  1. はじめてみる AWS IoT Core で作成した証明書およびプライベートキーを build/bin/certificates ディレクトリにコピーします。

    注記

    デバイスおよびルート CA 証明書の有効期限切れや失効の対象となります。これらの証明書の有効期限が切れたり、失効した場合は、新しい CA 証明書またはプライベートキーおよびデバイス証明書をデバイスにコピーする必要があります。

  2. 個人 AWS IoT Core エンドポイント、プライベートキー、証明書、ルート CA 証明書を使用してサンプルを設定する必要があります。aws-iot-device-sdk-embedded-c/demos/mqtt/mqtt_demo_mutual_auth ディレクトリに移動します。

    AWS CLI がインストールされている場合は、このコマンドを使用してアカウントのエンドポイント URL を検索できます。

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

    AWS CLI がインストールされていない場合は、 AWS IoT コンソールを開きます。ナビゲーションペインで、[Manage (管理)]、[Things (モノ)] の順に選択します。デバイスの IoT のモノを選択し、[Interact] (操作) を選択します。モノ の詳細ページの [HTTPS] セクションにエンドポイントが表示されます。

  3. demo_config.h ファイルを開いて、以下の値を更新します。

    AWS_IOT_ENDPOINT

    パーソナルエンドポイント。

    CLIENT_CERT_PATH

    証明書ファイルのパス (例 certificates/device.pem.crt")。

    CLIENT_PRIVATE_KEY_PATH

    プライベートキーのファイル名 (例 certificates/private.pem.key )。

    以下に例を示します。

    // 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. 次のコマンドを使用して、デバイスに CMake がインストールされているかどうかを確認します。

    cmake --version

    コンパイラのバージョン情報が表示された場合は、次のセクションに進みます。

    エラーが発生する、または情報が表示されない場合は、次のコマンドを使用して cmake パッケージをインストールする必要があります。

    sudo apt-get install cmake

    cmake --version コマンドを再度実行し、CMake がインストールされ、続行する準備ができていることを確認します。

  5. 次のコマンドを使用して、デバイスに開発ツールがインストールされているかどうかを確認します。

    gcc --version

    コンパイラのバージョン情報が表示された場合は、次のセクションに進みます。

    エラーが発生したり、コンパイラ情報が表示されない場合は、次のコマンドを使用して build-essential パッケージをインストールする必要があります。

    sudo apt-get install build-essential

    gcc --version コマンドを再度実行し、ビルドツールがインストールされ、続行する準備ができていることを確認します。

ステップ 3: サンプルアプリケーションをビルドして実行する

AWS IoT Device SDK for Embedded C サンプルアプリケーションを実行するには
  1. aws-iot-device-sdk-embedded-c に移動し、ディレクトリを作成します。

    mkdir build && cd build
  2. 次の CMake コマンドを入力して、ビルドに必要な Makefiles を生成します。

    cmake ..
  3. 次のコマンドを入力して、実行可能アプリケーションファイルをビルドします。

    make
  4. 次のコマンドで mqtt_demo_mutual_auth アプリを実行します。

    cd bin ./mqtt_demo_mutual_auth

    次のような出力が表示されます:

    
                             AWS IoT Device SDK for Embedded C サンプルアプリケーションを実行するためのコマンドライン出力。

これで、デバイスは AWS IoT を使用して に接続されました AWS IoT Device SDK for Embedded C。

AWS IoT コンソールを使用して、サンプルアプリケーションが発行している MQTT メッセージを表示することもできます。AWS IoT コンソールで MQTT クライアントを使用する方法については、「MQTT クライアントで MQTT メッセージを表示します。 AWS IoT」を参照してください。