

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

# Windows Device Simulator の開始方法
<a name="getting_started_windows"></a>

このチュートリアルでは、FreeRTOS Windows Device Simulator の使用を開始するための手順について説明します。

開始する前に、デバイスを AWS クラウドに接続するように、AWS IoT と FreeRTOS ダウンロードを設定する必要があります。手順については「[最初のステップ](freertos-prereqs.md)」を参照してください。このチュートリアルでは、FreeRTOS ダウンロードディレクトリへのパスを `freertos` とします。

FreeRTOS は、指定されたプラットフォーム用の FreeRTOS ライブラリとサンプルアプリケーションを含む zip ファイルとしてリリースされています。Windows マシンでサンプルを実行するには、Windows 上で動作するように移植されたライブラリとサンプルをダウンロードしてください。この一連のファイルは、FreeRTOS simulator for Windows と呼ばれます。

**注記**  
このチュートリアルは Amazon EC2 Windows インスタンスでは正常に実行できません。

## 開発環境をセットアップする
<a name="win-setup-env"></a>

1. 最新バージョンの [Npcap](https://npcap.com/) をインストールします。インストール時に「WinPcap API 互換モード」を選択します。

1. [Microsoft Visual Studio](https://www.visualstudio.com/downloads) をインストールします。

   Visual Studio バージョン 2017 および 2019 は動作することが確認されています。Visual Studio のすべてのエディションがサポートされます (Community、Professional、または Enterprise)。

   IDE に加えて、**[Desktop development with C\$1\$1]** (C\$1\$1 によるデスクトップ開発) コンポーネントをインストールします。

   最新の Windows 10 SDK をインストールします。これは、**[Desktop development with C\$1\$1]** (C\$1\$1 によるデスクトップ開発) コンポーネントの **[Optional]** (オプション) セクションで選択できます。

1. アクティブな有線イーサネット接続が存在することを確認してください。

1. (オプション) CMake ベースのビルドシステムを使用して FreeRTOS プロジェクトを構築する場合は、[CMake](https://cmake.org/download/) の最新バージョンをインストールします。FreeRTOS には CMake バージョン 3.13 以降が必要です。

## クラウドの MQTT メッセージのモニタリング
<a name="getting_started_windows_monitor_mqtt"></a>

FreeRTOS デモプロジェクトを実行する前に、デバイスが AWS クラウドに送信するメッセージをモニタリングするために、AWS IoT コンソールで MQTT クライアントをセットアップすることができます。

**AWS IoT MQTT クライアントで MQTT トピックをサブスクライブするには**

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

1. ナビゲーションペインで、**[テスト]** を選択し、**[MQTT テストクライアント]** を選択して MQTT クライアントを開きます。

1. **[Subscription topic]** (トピックのサブスクリプション) で ***your-thing-name*/example/topic** と入力し、**[Subscribe to topic]** (トピックへのサブスクライブ) を選択します。

デバイス上でデモプロジェクトが正常に実行されると、「Hello World\$1」が 購読しているトピックに複数回送信されたことを確認できます。

## FreeRTOS デモプロジェクトを構築して実行する
<a name="win-build-and-run-example"></a>

Visual Studio または CMake を使用して FreeRTOS プロジェクトを構築できます。

### Visual Studio IDE を使用して FreeRTOS デモプロジェクトを構築して実行する
<a name="win-build-and-run-vs"></a>

1. Visual Studio にプロジェクトをロードします。

   Visual Studio の **[File]** (ファイル) メニューから、**[Open]** (開ける) を選択します。**[File/Solution]** (ファイル/ソリューション) を選択し、`projects/pc/windows/visual_studio/aws_demos/aws_demos.sln` に移動してから **[Open]** (開ける) を選択します。

1. デモプロジェクトをリターゲットします。

   指定されたデモプロジェクトは、Windows SDK によって異なりますが、Windows SDK バージョンが指定されていません。デフォルトでは、IDE でマシンに存在しない SDK バージョンを使用してデモのビルドが試行されることがあります。Windows バージョンの SDK を設定するには、`aws_demos` を右クリックして **[Retarget Projects]** (プロジェクトをリターゲット) を選択します。これにより、**[Review Solution Actions]** (ソリューションのアクションを確認) ウィンドウが開きます。マシンに存在する Windows SDK バージョン (ドロップダウンの初期値で構いません) を選択して、**[OK]** を選択します。

1. プロジェクトを構築して実行します。

   **[Build]** (構築) メニューから **[Build Solution]** (ソリューションの構築) を選択し、ソリューションがエラーや警告なしで構築されることを確認します。**[Debug]** (デバッグ)、**[Start Debugging]** (デバッグを開始) を選択し、プロジェクトを実行します。最初の実行で、[ネットワークインターフェイスを選択](#win-network-interface)する必要があります。

### CMake を使用して FreeRTOS デモプロジェクトを構築して実行する
<a name="win-build-and-run-cmake"></a>

Windows Simulator のデモプロジェクトをビルドするには、CMake コマンドラインツールではなく、CMake GUI を使用することをお勧めします。

CMake をインストールしたら、CMake GUI を開きます。Windows では、これは、[Start] (スタート) メニューの **[CMake]** の下にある **[CMake (cmake-gui)]** にあります。

1. FreeRTOS ソースコードディレクトリを設定します。

   GUI の **[Where is the source code]** (ソースコードの場所) で、FreeRTOS ソースコードディレクトリ (`freertos`) を設定します。

   **[Where to build the binaries]** (バイナリを構築する場所) に `freertos/build` を設定します。

1. CMake プロジェクトを設定します。

   CMake GUI で **[Add Entry]** (エントリの追加) を選択し、**[Add Cache Entry]** (キャッシュエントリの追加) ウィンドウで以下の値を設定します。  
**名前**  
AFR\$1BOARD  
**タイプ**  
STRING  
**値**  
pc.windows  
**説明**  
(オプション)

1. **[Configure]** (設定) を選択します。CMake でビルドディレクトリを作成するよう求められたら、**[Yes]** (はい) を選択し、**[Specify generator generator for this project]** (このプロジェクトのジェネレーターを指定) でジェネレーターを選択します。ジェネレーターとして Visual Studio を使用することをお勧めしますが、Ninja もサポートされています。(Visual Studio 2019 を使用する場合、プラットフォームはデフォルト設定ではなく Win32 に設定する必要があります)。他のジェネレーターオプションは変更せずに、**[完了]** を選択します。

1. CMake プロジェクトを生成して開きます。

   プロジェクトを設定した後、生成されたプロジェクトで使用可能なすべてのオプションが CMake GUI に表示されます。このチュートリアルでは、オプションはデフォルト値のままで構いません。

   **[Generate]** (生成) を選択して Visual Studio ソリューションを作成してから、**[Open Project]** (プロジェクトを開く) を選択して Visual Studio でプロジェクトを開きます。

   Visual Studio で、`aws_demos` プロジェクトを右クリックして、**[Set as StartUp Project]** (スタートアッププロジェクトとして設定) を選択します。これにより、プロジェクトをビルドして実行することができます。最初の実行で、[ネットワークインターフェイスを選択](#win-network-interface)する必要があります。

FreeRTOS で CMake を使用する方法の詳細については、「[FreeRTOS で CMake を使用する](getting-started-cmake.md)」を参照してください。

### ネットワークインターフェイスを設定する
<a name="win-network-interface"></a>

デモプロジェクトの最初の実行では、使用するネットワークインターフェイスを選択する必要があります。プログラムは、ネットワークインターフェイスをカウントします。有線イーサネットインターフェイスの番号を見つけます。出力は次のようになります:

```
0 0 [None] FreeRTOS_IPInit
1 0 [None] vTaskStartScheduler
1. rpcap://\Device\NPF_{AD01B877-A0C1-4F33-8256-EE1F4480B70D}
(Network adapter 'Intel(R) Ethernet Connection (4) I219-LM' on local host)

2. rpcap://\Device\NPF_{337F7AF9-2520-4667-8EFF-2B575A98B580}
(Network adapter 'Microsoft' on local host)

The interface that will be opened is set by "configNETWORK_INTERFACE_TO_USE", which
should be defined in FreeRTOSConfig.h

ERROR:  configNETWORK_INTERFACE_TO_USE is set to 0, which is an invalid value.
Please set configNETWORK_INTERFACE_TO_USE to one of the interface numbers listed above,
then re-compile and re-start the application.  Only Ethernet (as opposed to Wi-Fi)
interfaces are supported.
```

有線イーサネットインターフェイスの番号を特定した後、アプリケーションウィンドウを閉じます。上記の例では、使用する番号は `1` です。

`FreeRTOSConfig.h` を開いて、`configNETWORK_INTERFACE_TO_USE` を有線ネットワークインターフェイスに対応する番号に設定します。

**重要**  
イーサネットインターフェイスのみがサポートされています。Wi-Fi はサポートされていません。

## トラブルシューティング
<a name="windows-troubleshooting"></a>

### Windows での一般的な問題のトラブルシューティング
<a name="windows-troubleshooting-common"></a>

Visual Studio でデモプロジェクトビルドしようとしたときに次のエラーが発生する可能性があります。

```
Error "The Windows SDK version X.Y was not found" when building the provided Visual Studio solution.
```

プロジェクトは、コンピュータに存在する Windows SDK バージョンを対象とする必要があります。

FreeRTOS の開始方法に関する一般的なトラブルシューティングについては、「[トラブルシューティングの開始方法](gsg-troubleshooting.md)」を参照してください。