

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

# AWS IoT Greengrass V1 検出デモアプリケーション
<a name="gg-demov1"></a>

**重要**  <a name="deprecation-message-demo"></a>
このデモは、非推奨の Amazon-FreeRTOS リポジトリでホストされています。新しいプロジェクトを作成するときは、[ここから始める](freertos-getting-started-modular.md)ことをお勧めします。現在非推奨の Amazon-FreeRTOS リポジトリをベースにした既存の FreeRTOS プロジェクトが既にある場合は、「[Amazon FreeRTOS Github リポジトリ移行ガイド](github-repo-migration.md)」を参照してください。

FreeRTOS の AWS IoT Greengrass Discovery デモを実行する前に、 と AWS AWS IoT Greengrassをセットアップする必要があります AWS IoT。セットアップするには AWS、「」の手順に従います[AWS アカウントとアクセス許可の設定](freertos-prereqs.md#freertos-account-and-permissions)。をセットアップするには AWS IoT Greengrass、Greengrass グループを作成し、Greengrass コアを追加する必要があります。設定の詳細については AWS IoT Greengrass、[「 の開始方法 AWS IoT Greengrass](https://docs.aws.amazon.com/greengrass/latest/developerguide/gg-gs.html)」を参照してください。

 AWS と を設定したら AWS IoT Greengrass、追加のアクセス許可を設定する必要があります AWS IoT Greengrass。

**アクセス AWS IoT Greengrass 許可を設定するには**

1. [IAM コンソール](https://console.aws.amazon.com/iam/home)を参照します。

1. ナビゲーションペインで [**ロール**] を選択した後、[**Greengrass\_ServiceRole**] を見つけて選択します。

1. [**Attach policies (ポリシーをアタッチする)**]、[**AmazonS3FullAccess**]、[**AWSIoTFullAccess**]、[**ポリシーのアタッチ**] の順に選択します。

1. [AWS IoT コンソール](https://console.aws.amazon.com/iotv2/)を参照します。

1. ナビゲーションペインで [**Greengrass**]、[**グループ**] の順に選択し、以前に作成した Greengrass グループを選びます。

1. [**設定**]、[**ロールの追加**] の順に選択します。

1. [**Greengrass\_ServiceRole**]、[**保存**] の順に選択します。

ボードを に接続 AWS IoT し、FreeRTOS デモを設定します。

1. [への MCU ボードの登録 AWS IoT](freertos-prereqs.md#get-started-freertos-thing)

   ボードを登録した後、新しい Greengrass ポリシーを作成し、デバイスの証明書にアタッチする必要があります。

**新しい AWS IoT Greengrass ポリシーを作成するには**

   1. [AWS IoT コンソール](https://console.aws.amazon.com/iotv2/)を参照します。

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

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

   1. **[Add statements]** (ステートメントを追加) セクションで、**[Advanced mode]** (アドバンストモード) を選択します。次の JSON をポリシーエディタウィンドウにコピーアンドペーストします。

      ```
      {
            "Effect": "Allow",
            "Action": [
              "greengrass:*"
            ],
            "Resource": "*"
      }
      ```

      このポリシーは、すべてのリソースにアクセス AWS IoT Greengrass 許可を付与します。

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

**デバイスの証明書に AWS IoT Greengrass ポリシーをアタッチするには**

   1. [AWS IoT コンソール](https://console.aws.amazon.com/iotv2/)を参照します。

   1. ナビゲーションペインで、[**管理**]、[**モノ**] の順に選択して、以前に作成したモノを選択します。

   1. [**セキュリティ**] を選択し、デバイスにアタッチされている証明書を選択します。

   1. [**ポリシー**]、[**アクション**]、[**ポリシーのアタッチ**] の順に選択します。

   1. 前に作成した Greengrass ポリシーを検索して選択し、[**アタッチ**] を選択します。

1. [FreeRTOS をダウンロードする](freertos-prereqs.md#freertos-download)
**注記**  
FreeRTOS コンソールから FreeRTOS をダウンロードする場合は、**Connect to AWS IoT Greengrass- {{Platform}}** ではなく **Connect to AWS IoT- {{Platform}}** を選択します。

1. [FreeRTOS デモを設定する](freertos-prereqs.md#freertos-configure).

   `{{freertos}}/vendors/{{vendor}}/boards/{{board}}/aws_demos/config_files/aws_demo_config.h` を開き、`#define CONFIG_CORE_MQTT_MUTUAL_AUTH_DEMO_ENABLED` をコメントアウトして `CONFIG_GREENGRASS_DISCOVERY_DEMO_ENABLED` を定義します。

 AWS IoT と をセットアップした後 AWS IoT Greengrass、FreeRTOS をダウンロードして設定したら、デバイスで Greengrass デモを構築、フラッシュ、実行できます。ボードのハードウェアとソフトウェアの開発環境を設定するには、[ボード固有の入門ガイド](getting-started-guides.md) の手順に従います。

Greengrass デモは、Greengrass コアと AWS IoT MQTT クライアントに一連のメッセージを発行します。 AWS IoT MQTT クライアントでメッセージを表示するには、[AWS IoT コンソール](https://console.aws.amazon.com/iotv2/)を開き、**テスト**を選択し、**MQTT テストクライアント**を選択し、サブスクリプションを に追加します`freertos/demos/ggd`。

MQTT クライアントには以下の文字列が表示されます。

```
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
```

## Amazon EC2 インスタンスを使用する
<a name="gg-demo-ec2"></a>

**Amazon EC2 インスタンスを操作している場合**

1. Amazon EC2 インスタンスに関連付けられているパブリック DNS (IPv4) を見つけます。Amazon EC2 コンソールに移動し、左側のナビゲーションパネルで **[Instances] **(インスタンス) を選択します。Amazon EC2 インスタンスを選択し、**[Description]** (説明) パネルを選択します。[**パブリック DNS (IPv4)**] のエントリを探し、メモします。

1. **[Security groups]** (セキュリティグループ) のエントリを見つけて、Amazon EC2 インスタンスにアタッチされているセキュリティグループを選択します。

1. [**インバウンドルール**] タブを選択し、[**インバウンドルールの編集**] を選択して、次のルールを追加します。  
**インバウンドルール**    
[See the AWS documentation website for more details](http://docs.aws.amazon.com/ja_jp/freertos/latest/userguide/gg-demov1.html)

1.  AWS IoT コンソールで **Greengrass**、**Groups** を選択し、以前に作成した Greengrass グループを選択します。**[設定]** を選択します。[**ローカル接続の検出**] を [**接続情報の手動管理**] に変更します。

1. ナビゲーションペインで、[**コア**] を選択し、グループコアを選択します。

1. [**接続**] を選択し、コアエンドポイントが 1 つだけあり (残りのエンドポイントはすべて削除)、IP アドレスではないことを確認します (変化する可能性があるため)。最初のステップでメモしたパブリック DNS (IPv4) を使用することをお勧めします。

1. 作成した FreeRTOS IoT モノを GG グループに追加します。

   1. グループ AWS IoT Greengrass ページに戻るには、戻る矢印を選択します。ナビゲーションペインで、[**デバイス**] を選択し、[**デバイスの追加**] を選択します。

   1. [**IoT モノの選択**] を選択します。デバイスを選択し、[**完了**] を選択します。

1. 必要なサブスクリプションを追加します。** [Greengrass Group] **(Greengrass グループ) ページで** [Subscription] **(サブスクリプション) を選択し、**[Add Subscription]** (サブスクリプションの追加) を選択して、ここに示す情報を入力します。  
**サブスクリプション**    
[See the AWS documentation website for more details](http://docs.aws.amazon.com/ja_jp/freertos/latest/userguide/gg-demov1.html)

   ここで「ソース」は、ボードを登録したときに AWS IoT コンソールで作成された AWS IoT モノに付けられた名前です。ここで示す例では「TIGG1」です。

1.  AWS IoT Greengrass グループのデプロイを開始し、デプロイが成功していることを確認します。これで、 AWS IoT Greengrass 検出デモを正常に実行できるようになります。