翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
最初のステップ
重要
このページは、廃止された Amazon-FreeRTOS リポジトリを参照しています。新しいプロジェクトを作成するときは、ここから始めることをお勧めします。廃止された Amazon-FreeRTOS リポジトリに基づいて既存の FreeRTOS プロジェクトがある場合は、「」を参照してくださいAmazon-FreeRTOS Github リポジトリ移行ガイド。
で FreeRTOS の使用を開始するには AWS IoT、 AWS アカウント、アクセス許可を持つユーザー AWS IoT 、および FreeRTOS クラウドサービスが必要です。また、無料RTOSをダウンロードし、ボードの無料RTOSデモプロジェクトを設定して と連携させる必要があります AWS IoT。以下のセクションでは、これらの要件について説明します。
注記
-
Espressif ESP32-DevKitC ESP-WROVER-KITまたは ESP32WROOM--32SE を使用している場合は、これらのステップをスキップして に進みますEspressif ESP32-DevKitC と の開始方法 ESP-WROVER-KIT。
-
Nordic n RF52840-DK を使用している場合は、これらのステップをスキップして に進みますNordic nRF52840-DK の開始方法。
AWS アカウントとアクセス許可の設定
にサインアップする AWS アカウント
がない場合は AWS アカウント、次の手順を実行して作成します。
にサインアップするには AWS アカウント
https://portal.aws.amazon.com/billing/サインアップ
を開きます。 オンラインの手順に従います。
サインアップ手順の一環として、通話呼び出しを受け取り、電話キーパッドで検証コードを入力するように求められます。
にサインアップすると AWS アカウント、 AWS アカウントのルートユーザー が作成されます。ルートユーザーには、アカウントのすべての AWS のサービス とリソースへのアクセス権があります。セキュリティのベストプラクティスとして、ユーザーに管理アクセスを割り当て、ルートユーザーのみを使用してルートユーザーアクセスが必要なタスクを実行してください。
AWS は、サインアッププロセスが完了した後に確認 E メールを送信します。/ に移動し、マイアカウント を選択すると、いつでも現在のアカウントアクティビティを表示https://aws.amazon.com
管理アクセスを持つユーザーを作成する
にサインアップしたら AWS アカウント、 のセキュリティを確保し AWS アカウントのルートユーザー、 を有効にして管理ユーザーを作成し AWS IAM Identity Center、日常的なタスクにルートユーザーを使用しないようにします。
のセキュリティ保護 AWS アカウントのルートユーザー
-
ルートユーザーを選択し、 AWS アカウント E メールアドレスを入力して、アカウント所有者AWS Management Console
として にサインインします。次のページでパスワードを入力します。 ルートユーザーを使用してサインインする方法については、AWS サインイン ユーザーガイドのルートユーザーとしてサインインするを参照してください。
-
ルートユーザーの多要素認証 (MFA) を有効にします。
手順については、「 ユーザーガイド」の AWS アカウント 「ルートユーザー (コンソール) の仮想MFAデバイスの有効化」を参照してください。 IAM
管理アクセスを持つユーザーを作成する
-
IAM Identity Center を有効にします。
手順については、「AWS IAM Identity Center ユーザーガイド」の「AWS IAM Identity Centerの有効化」を参照してください。
-
IAM Identity Center で、ユーザーに管理アクセスを許可します。
ID ソース IAM アイデンティティセンターディレクトリ として を使用するためのチュートリアルについては、 AWS IAM Identity Center ユーザーガイドの「デフォルトを使用してユーザーアクセスを設定する IAM アイデンティティセンターディレクトリ」を参照してください。
管理アクセス権を持つユーザーとしてサインインする
-
IAM Identity Center ユーザーでサインインするには、IAMIdentity Center ユーザーの作成時に E メールアドレスにURL送信されたサインインを使用します。
IAM Identity Center ユーザーを使用してサインインする方法については、AWS サインイン 「 ユーザーガイド」のAWS 「 アクセスポータルへのサインイン」を参照してください。
追加のユーザーにアクセス権を割り当てる
アクセス権限を付与するには、ユーザー、グループ、またはロールにアクセス許可を追加します。
-
のユーザーとグループ AWS IAM Identity Center:
アクセス許可セットを作成します。「AWS IAM Identity Center ユーザーガイド」の「権限設定を作成する」の手順に従ってください。
-
ID プロバイダーIAMを介して で管理されるユーザー:
ID フェデレーションのロールを作成します。IAM 「 ユーザーガイド」の「サードパーティー ID プロバイダー (フェデレーション) のロールを作成する」の手順に従います。
-
IAM ユーザー:
-
ユーザーが担当できるロールを作成します。「 ユーザーガイド」のIAM「ユーザーのロールを作成する」の指示に従います。 IAM
-
(お奨めできない方法) ポリシーをユーザーに直接アタッチするか、ユーザーをユーザーグループに追加する。IAM ユーザーガイドの「ユーザー (コンソール) へのアクセス許可を追加する」の手順に従います。
-
へのMCUボードの登録 AWS IoT
AWS クラウドと通信 AWS IoT するには、ボードを に登録する必要があります。ボードを に登録するには AWS IoT、以下が必要です。
- AWS IoT ポリシー
-
この AWS IoT ポリシーは、 AWS IoT リソースにアクセスするためのアクセス許可をデバイスに付与します。クラウドに保存されます AWS 。
- AWS IoT モノ
-
AWS IoT モノを使用すると、 でデバイスを管理できます AWS IoT。クラウドに保存されます AWS 。
- プライベートキーと X.509 証明書
-
プライベートキーと証明書により、デバイスは で認証できます AWS IoT。
ボードを登録するには、次の手順に従ってください。
AWS IoT ポリシーを作成するには
-
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 --endpoint-type=iot:Data-ATS
出力は次のようになります:
{ "endpointAddress": "xxxxxxxxxxxxxx-ats.iot.us-west-2.amazonaws.com" }
この例では、リージョンは
us-west-2
です。注記
例に示すように、ATSエンドポイントを使用することをお勧めします。
-
AWS IoT コンソール
を参照します。 -
ナビゲーションペインで、[Secure] (保護) を選択し、[Policies] (ポリシー) を選択してから [Create] (作成) を選択します。
-
ポリシーを識別するための名前を入力します。
-
[Add statements] (ステートメントを追加) セクションで、[Advanced mode] (アドバンストモード) を選択します。以下をコピーしてポリシーエディタウィンドウJSONに貼り付けます。
と を AWS リージョンとアカウント IDaws-region
に置き換えます。aws-account
{ "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 メッセージを受信するアクセス許可を付与します。
-
[Create] (作成) を選択します。
デバイス用の IoT モノ、プライベートキー、証明書を作成するには
-
AWS IoT コンソール
を参照します。 -
ナビゲーションペインで、[Manage] (管理)、[Things] (モノ) の順に選択します。
-
アカウントに IoT モノが登録されていない場合は、[You don't have any things yet] (まだモノがありません) ページが表示されます。このページが表示された場合は、[Register a thing] (モノの登録) を選択します。それ以外の場合は、[Create] (作成) を選択します。
-
AWS IoT モノの作成 ページで、モノを 1 つ作成する を選択します。
-
[Add your device to the thing registry] (Thing Registry にデバイスを追加) ページで、モノの名前を入力してから [Next] (次へ) を選択します。
-
[Add a certificate for your thing] (モノに証明書を追加) ページの [One-click certificate creation] (1-Click 証明書作成) から [Create certificate] (証明書の作成) を選択します。
-
それぞれの [Download] (ダウンロード) リンクを選択して、プライベートキーと証明書をダウンロードします。
-
証明書を有効にするには、[Activate] (有効化) を選択します。証明書は、使用前にアクティブ化する必要があります。
-
ポリシーをアタッチを選択して、デバイスに AWS IoT オペレーションへのアクセスを許可するポリシーを証明書にアタッチします。
-
作成したポリシーを選択し、[Register thing] (モノの登録) を選択します。
ボードが に登録されたら AWS IoT、 に進むことができます無料ダウンロードRTOS。
無料ダウンロードRTOS
FreeRTOS GitHub リポジトリ から FreeRTOS
無料 をダウンロードしたらRTOS、 に進むことができます無料RTOSデモの設定。
無料RTOSデモの設定
ボードでデモをコンパイルして実行する前に、FreeRTOS ディレクトリ内の一部の設定ファイルを編集する必要があります。
AWS IoT エンドポイントを設定するには
ボードで実行されているアプリケーションが正しい AWS IoT エンドポイントにリクエストを送信できるように、エンドポイントに FreeRTOS を指定する必要があります。
-
AWS IoT コンソール
を参照します。 -
左のナビゲーションペインの [設定] を選択します。
AWS IoT エンドポイントはデバイスデータエンドポイント に表示されます。次のようになっているはずです。
このエンドポイントを書きとめておきます。1234567890123
-ats.iot.us-east-1
.amazonaws.com -
ナビゲーションペインで、[Manage] (管理)、[Things] (モノ) の順に選択します。
デバイスには AWS IoT モノの名前が必要です。この名前を書き留めておきます。
-
demos/include/aws_clientcredential.h
を開きます。 -
以下の定数に値を指定します。
-
#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 がボードでサポートされていない場合は、以下のステップをスキップできます。
-
demos/include/aws_clientcredential.h
. -
以下の
#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 言語プロジェクトであり、証明書とプライベートキーは、プロジェクトに追加するために特別にフォーマットする必要があります。
-
ブラウザウィンドウで、
tools/certificate_configuration/CertificateConfigurator.html
を開きます。 -
証明書PEMファイル で AWS IoT 、コンソールからダウンロード
した を選択します。ID
-certificate.pem.crt -
プライベートキーPEMファイル で AWS IoT 、コンソールからダウンロード
した を選択します。ID
-private.pem.key -
[Generate and save aws_clientcredential_keys.h] (aws_clientcredential_keys.h の生成と保存) を選択して、ファイルを
demos/include
に保存します。これにより、ディレクトリ内の既存ファイルが上書きされます。注記
証明書とプライベートキーは、デモ専用にハードコードされています。本番稼動レベルのアプリケーションでは、これらのファイルを安全な場所に保存する必要があります。
無料 を設定したらRTOS、ボードの入門ガイドに進み、プラットフォームのハードウェアとそのソフトウェア開発環境を設定し、ボードでデモをコンパイルして実行できます。ボード固有の説明については、「ボード固有の入門ガイド」を参照してください。入門チュートリアルで使用されるデモアプリケーションは、 にあるコアMQTT相互認証デモですdemos/coreMQTT/mqtt_demo_mutual_auth.c
。