最初のステップ - FreeRTOS

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

最初のステップ

AWS IoT で使用 FreeRTOS を開始するには、AWS アカウント、AWS IoT へのアクセス許可を持つ IAM ユーザー、FreeRTOS クラウドサービスが必要です。また、FreeRTOS をダウンロードして、AWS IoT と連携するようにボードの FreeRTOS デモプロジェクトを設定する必要があります。以下のセクションでは、これらの要件について説明します。

注記

ESP32-DevKitC、ESP-WROVER-KIT、または ESP32-WROOM-32SE を使用している場合は、これらの最初のステップをスキップして「Espressif ESP32-DevKitC と ESP-WROVER-KIT の開始方法」に進みます。

Nordic nRF52840-DK を使用している場合は、これらの最初のステップをスキップして「Nordic nRF52840-DK の開始方法」に進みます。

  1. AWS アカウントとアクセス許可の設定

    AWS アカウントとアクセス許可の設定」の手順を完了したら、 コンソールの [Quick Connect (クイック接続)FreeRTOS] ワークフローに従って、ボードを クラウドにすばやく接続できます。AWS[Quick Connect (クイック接続)] のワークフローに従っている場合は、このリストの残りの手順を完了する必要はありません。以下のボードでは、FreeRTOS の設定は現在 FreeRTOS コンソールでは使用できません。

    • Cypress CYW943907AEVAL1F 開発キット

    • Cypress CYW954907AEVAL1F 開発キット

  2. AWS IoT で MCU ボードを登録

  3. のダウンロードFreeRTOS

  4. FreeRTOS デモの設定

AWS アカウントとアクセス許可の設定

AWS アカウントを作成するには、[アマゾン ウェブ サービスの新規アカウントを作成してアクティブ化する方法を教えてください。] を参照してください。

AWS アカウントに IAM ユーザーを追加するには、IAM ユーザーガイド を参照してください。AWS IoT および FreeRTOS に IAM ユーザーアカウントのアクセスを付与するには、IAM ユーザーアカウントに以下の IAM ポリシーをアタッチします。

  • AmazonFreeRTOSFullAccess

  • AWSIoTFullAccess

IAM ユーザーへ AmazonFreeRTOSFullAccess ポリシーをアタッチするには

  1. IAM コンソールにアクセスし、ナビゲーションペインから [Users (ユーザー)] を選択します。

  2. 検索テキストボックスにユーザー名を入力し、リストから選択します。

  3. [Add permissions (アクセス許可を追加する)] を選択します。

  4. [Attach existing policies directly] を選択します。

  5. 検索ボックスに「 AmazonFreeRTOSFullAccessから選択して、 次へ: レビュー.

  6. [Add permissions (アクセス許可を追加する)] を選択します。

IAM ユーザーへ AWSIoTFullAccess ポリシーをアタッチするには

  1. IAM コンソールにアクセスし、ナビゲーションペインから [Users (ユーザー)] を選択します。

  2. 検索テキストボックスにユーザー名を入力し、リストから選択します。

  3. [Add permissions (アクセス許可を追加する)] を選択します。

  4. [Attach existing policies directly] を選択します。

  5. 検索ボックスに「 AWSIoTFullAccessから選択して、 次へ: レビュー.

  6. [Add permissions (アクセス許可を追加する)] を選択します。

IAM およびユーザーアカウントの詳細については、IAM ユーザーガイド を参照してください。

ポリシーの詳細については、「IAM アクセス権限とポリシー」を参照してください。

設定後、 AWS アカウントと権限を AWS IoT で MCU ボードを登録 または クイックコネクト ワークフローを FreeRTOS コンソール.

AWS IoT で MCU ボードを登録

AWS クラウドと通信するには、ボードを AWS IoT に登録する必要があります。ボードを AWS IoT に登録するには、以下が必要です。

AWS IoT ポリシー

AWS IoT ポリシーは、AWS IoT リソースへのアクセス権限をデバイスに付与します。これは AWS クラウド上に保存されます。

AWS IoT のモノ

AWS IoT のモノにより、AWS IoT でデバイスを管理できるようになります。これは AWS クラウド上に保存されます。

プライベートキーと X.509 証明書

プライベートキーと証明書により、AWS IoT でデバイスを認証できるようになります。

[ クイックコネクト ワークフローを FreeRTOS コンソール、ポリシー、 AWS IoT 鍵と証明書が作成されます。[Quick Connect (クイック接続)] ワークフローを使用している場合は、以下の手順を無視できます。

手動でボードを登録するには、次の手順に従ってください。

AWS IoT ポリシーを作成するには

  1. IAM ポリシーを作成するには、AWS リージョンと AWS アカウント番号を把握しておく必要があります。

    AWS アカウント番号を見つけるには、AWS マネジメントコンソールを開き、右上隅のアカウント名の下にあるメニューを展開し、[アカウント] を選択します。アカウント ID が [Account Settings (アカウント設定)] に表示されます。

    AWS アカウントの AWS リージョンを確認するには、AWS Command Line Interface を使用します。AWS CLI をインストールするには、AWS Command Line Interface ユーザーガイドの手順に従います。AWS CLI をインストールしたら、コマンドプロンプトウィンドウを開き、次のコマンドを入力します。

    aws iot describe-endpoint

    出力は次のようになります。

    { "endpointAddress": "xxxxxxxxxxxxxx.iot.us-west-2.amazonaws.com" }

    この例では、リージョンは us-west-2 です。

  2. AWS IoT コンソール」にアクセスします。

  3. ナビゲーションペインで、[Secure (保護)] を選択し、[Policies (ポリシー)] を選択してから [Create (作成)] を選択します。

  4. ポリシーを識別するための名前を入力します。

  5. [Add statements (ステートメントを追加)] セクションで、[Advanced mode (アドバンストモード)] を選択します。次の JSON をポリシーエディタウィンドウにコピーして貼り付けます。置換 aws-region および aws-account AWS地域とアカウントIDを入力します。

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iot:Connect", "Resource":"arn:aws:iot:aws-region:aws-account-id:*" }, { "Effect": "Allow", "Action": "iot:Publish", "Resource": "arn:aws:iot:aws-region:aws-account-id:*" }, { "Effect": "Allow", "Action": "iot:Subscribe", "Resource": "arn:aws:iot:aws-region:aws-account-id:*" }, { "Effect": "Allow", "Action": "iot:Receive", "Resource": "arn:aws:iot:aws-region:aws-account-id:*" } ] }

    このポリシーは以下のアクセス権限を与えます。

    iot:Connect

    任意のクライアント ID を使用して AWS IoT メッセージブローカーに接続するためのアクセス許可をデバイスに付与します。

    iot:Publish

    MQTT トピックについて MQTT メッセージを発行するためのアクセス許可をデバイスに付与します。

    iot:Subscribe

    MQTT トピックフィルターをサブスクライブするためのアクセス許可をデバイスに付与します。

    iot:Receive

    MQTT トピックについて AWS IoT メッセージブローカーからメッセージを受信するためのアクセス許可をデバイスに付与します。

  6. [作成] を選択します。

_を作成するには IoT 端末用のモノ、秘密キー、証明書

  1. AWS IoT コンソール」にアクセスします。

  2. ナビゲーションペインで、[Manage (管理)]、[Things (モノ)] の順に選択します。

  3. 他に IoT お客さまのアカウントに登録されているもの、 まだ何もない ページが表示されます。このページが表示された場合は、[Register a thing (モノの登録)] を選択します。それ以外の場合は、[Create (作成)] を選択します。

  4. [Creating AWS IoT things (モノを作成する)] ページで、[Create a single thing (単一のモノを作成する)] を選択します。

  5. [Add your device to the thing registry (Thing Registry にデバイスを追加)] ページで、モノの名前を入力してから [Next (次へ)] を選択します。

  6. [Add a certificate for your thing (モノに証明書を追加)] ページの [One-click certificate creation (1-Click 証明書作成)] から、[Create certificate (証明書の作成)] を選択します。

  7. それぞれの [Download (ダウンロード)] リンクを選択して、プライベートキーと証明書をダウンロードします。

  8. 証明書を有効にするには、[Activate (有効化)] を選択します。証明書は、使用前にアクティブ化する必要があります。

  9. [Attach a policy (ポリシーをアタッチ)] を選択して、デバイスに AWS IoT オペレーションへのアクセス権限を付与するポリシーを証明書にアタッチします。

  10. 作成したポリシーを選択し、[Register thing (モノの登録)] を選択します。

ボードが AWS IoT に登録されたら、「 のダウンロードFreeRTOS」に進むことができます。

のダウンロードFreeRTOS

は、 FreeRTOS FreeRTOS コンソールまたは FreeRTOS GitHub リポジトリからダウンロードできます。

注記

コンソールで FreeRTOS[クイック接続] ワークフローに従っている場合は、次の手順を無視できます。

FreeRTOS コンソールから FreeRTOS をダウンロードするには

  1. FreeRTOS コンソール.にサインインします。

  2. [事前定義された設定] で、[Connect to AWS IoT- (接続先 -)] を見つけます。Platform] を選択し、[Download] を選択します。

  3. ダウンロードしたファイルをディレクトリに解凍し、ディレクトリパスをコピーします。

    重要
    • このトピックでは、FreeRTOS ダウンロードディレクトリへのパスを freertos. とします。

    • freertos パスにスペース文字が含まれていると、ビルドが失敗する可能性があります。リポジトリをクローンまたはコピーするときは、作成するパスにスペース文字が含まれていないことを確認してください。

    • Microsoft Windows でのファイルパスの最大長は 260 文字です。FreeRTOS のダウンロードディレクトリパスが長くなると、ビルドが失敗する可能性があります。

注記

Cypress CYW954907AEVAL1F または CYW943907AEVAL1F 開発キットの使用を開始する場合は、 FreeRTOS から をダウンロードする必要がありますGitHub。 手順については、README.md ファイルを参照してください。これらのボード用の FreeRTOS 設定は、現在 FreeRTOS コンソールからは使用できません。

FreeRTOS をダウンロードしたら、FreeRTOS デモの設定. に続行できます。

FreeRTOS デモの設定

ボードでデモをコンパイルして実行する前に、FreeRTOS ディレクトリで一部の設定ファイルを編集する必要があります。

コンソールでFreeRTOSクイック接続ワークフローに従っている場合は、コンソールのワークフローの設定手順に従って、これらの手順を無視します。

AWS IoT エンドポイントを設定するには

ボード上で実行中のアプリケーションが正しいエンドポイントにリクエストを送信できるように、FreeRTOS エンドポイントに AWS IoT を指定する必要があります。

  1. AWS IoT コンソール」にアクセスします。

  2. ナビゲーションペインで [設定] を選択します。

    AWS IoT エンドポイントが [エンドポイント] に表示されます。次のようになっているはずです。1234567890123-ats.iot.us-east-1.amazonaws.comこのエンドポイントを書きとめておきます。

  3. ナビゲーションペインで、[Manage (管理)]、[Things (モノ)] の順に選択します。

    デバイスには、AWS IoT のモノ名が必要です。この名前を書き留めておきます。

  4. を開きますdemos/include/aws_clientcredential.h

  5. 以下の 定数の値を指定します。

    • #define clientcredentialMQTT_BROKER_ENDPOINT "Your AWS IoT endpoint";

    • #define clientcredentialIOT_THING_NAME "The AWS IoT thing name of your board"

Wi-Fi を設定するには

ボードが Wi-Fi 接続経由でインターネットに接続している場合は、ネットワークに接続するための Wi-Fi 認証情報を FreeRTOS に渡す必要があります。Wi-Fi がボードでサポートされていない場合は、以下のステップをスキップできます。

  1. demos/include/aws_clientcredential.h.

  2. 以下の #define 定数の値を指定します。

    • #define clientcredentialWIFI_SSID "The SSID for your Wi-Fi network"

    • #define clientcredentialWIFI_PASSWORD "The password for your Wi-Fi network"

    • #define clientcredentialWIFI_SECURITY The security type of your Wi-Fi network

      有効なセキュリティタイプは以下の通りです。

      • eWiFiSecurityOpen (オープン、セキュリティなし)

      • eWiFiSecurityWEP (WEP セキュリティ)

      • eWiFiSecurityWPA (WPA セキュリティ)

      • eWiFiSecurityWPA2 (WPA2 セキュリティ)

AWS IoT の認証情報をフォーマットするには

FreeRTOS は、デバイスに代わって AWS IoT と正常に通信するために、登録済みのモノに関連付けられた AWS IoT 証明書とシークレットキー、およびそのアクセス許可ポリシーを必要とします。

注記

AWS IoT 認証情報を設定するには、デバイスを登録する際に AWS IoT コンソールからダウンロードしたプライベートキーと証明書が必要です。AWS IoT のモノとしてデバイスを登録した後で、デバイスの証明書を AWS IoT コンソールから取得することはできますが、プライベートキーは取得できません。

FreeRTOS は C 言語のプロジェクトであり、証明書とプライベートキーをプロジェクトに追加するには、特別な形式にする必要があります。

  1. ブラウザウィンドウで、tools/certificate_configuration/CertificateConfigurator.html を開きます。

  2. [Certificate PEM file (証明書 PEM ファイル)] で、ID-certificate.pem.crt コンソールからダウンロードした AWS IoT を選択します。

  3. [Private Key PEM file (プライベートキー PEM ファイル)] の下で、ID-private.pem.key コンソールからダウンロードした AWS IoT を選択します。

  4. [Generate and save aws_clientcredential_keys.h (aws_clientcredential_keys.h の生成と保存)] を選択して、ファイルを demos/include に保存します。これにより、ディレクトリ内の既存ファイルが上書きされます。

    注記

    証明書とプライベートキーは、デモ専用にハードコードされています。本番稼動レベルのアプリケーションでは、これらのファイルを安全な場所に保存する必要があります。

FreeRTOS を設定した後、ボードの入門ガイドに進み、FreeRTOS デモをコンパイルして実行できます。入門チュートリアルで使用されているデモアプリケーションは、 coreMQTT 相互認証デモで、 にありますdemos/mqtt/iot_demo_mqtt.c

最初のステップ を完了した後、プラットフォームのハードウェアおよびソフトウェア開発環境をセットアップし、その後でボードでデモをコンパイルして実行できます。ボード固有の説明については、「ボード固有の入門ガイド」を参照してください。