AmazonWebService(5)-ポート 443を使った証明書によるクライアント認証でMQTT接続

前回、Amazon FreeRTOSを使用して、AWSとデータの送受信しました。Amazon FreeRTOSは、RX65N Cloud Kitに書き込んで使用しました。前回は、ポート8883、ポート8443を使用しましたが、企業のファイアウォールや一部のホームルータは、デフォルトでは、HTTPS の標準ポート 443 以外のすべてのポートで、制限することが多いので、そのような環境では、正しく動作しません。その時に、ポート443を使用します。AWS IoT Core は、ポート443を使った証明書によるクライアント認証でMQTT接続をサポートしています。

それでは、試してみます。ルーターの8883ポートを制限して、RX65N Cloud Kitを動作させてみました。下記のようにエラーが発生しました。

このようにポートを制限されてしまったため、通信エラーになってしまいました。企業では、セキュリティのため、ポート制限をすることはよくあることです。そこで、HTTPS の標準ポート 443を使用します。それでは、ポート443に対応できるようにソースコードを修正していきたいと思います。

AmazonWebService(4)-Amazon FreeRTOS動作確認

前回まで、Amazon Web Service側の設定が完了したので、今回は、Amazon FreeRTOSを使用して、AWSとデータの送受信をしようと思います。Amazon FreeRTOSは、RX65N Cloud Kitに書き込んで使用します。それでは、まずは、Amazon FreeRTOSを用意します。下記のサイトからダウンロード可能です。

Amazon Web Services からダウンロードしたAmazon FreeRTOSは、Amazon FreeRTOS Qualification Program による検証されたものになります。また、
Amazon FreeRTOSは最新版ではありません。検証に使用したマイコンボードは、Renesas Starter Kit+ for RX65N-2MBになります。

GitHub(aws) からダウンロードしたAmazon FreeRTOSは、最新版のAmazon FreeRTOSになります。検証に使用したRXマイコン ボード以外のパッケージはありません。

GitHub(renesas-rx) からダウンロードしたAmazon FreeRTOSは、最新版のAmazon FreeRTOSではありません。検証に使用したRXマイコン ボード以外のパッケージもあります。RX65N Cloud Kitのパッケージもあります。

今回は、RX65N Cloud Kitを使用しようと思いますので、GitHub(renesas-rx) からダウンロードします。

それでは、まずはダウンロードしたファイルを統合開発環境(IDE)にインポートします。IDEは、e2studioを使用します。

C#言語(9)-グラフの表示

今回は、C#言語でグラフの表示をする機能を構築したいと思います。グラフの種類は散布図にしようと思います。それでは、構築していきたいと思います。まずは、新規プロジェクトを作成します。作成方法は下記のサイトを参考になると思います。

C#言語(1)-アプリケーションを作成してみる

次に、Chartをダイアログに配置します。ツールボックスの[データ]→[Chart]を選択してダイアログに配置します。

現在はグラフの種類が棒グラフになっているので、散布図に変更します。グラフのプロパティより[Series]を選択して、参照ボタンを押します。

Series コレクション エディタが表示されます。Chart Typeが「Column」に設定されているので、「Point」に変更します。変更したら、「OK」ボタンを押します。([データ]→[Name]に記載されているSeriesのNameは後ほど使用するので、覚えておいてください。)

これで、ダイアログの作成は完了したので、画面を表示した時の処理をコーディングしていきます。画面をダイアログのフレームをダブルクリックして、MainForm_Load関数を作成します。作成できたら下記のようにコーディングします。

private void MainForm_Load(object sender, EventArgs e)
{
    for (int i = 0; i < 100; i++)
    {
        chart1.Series["Series1"].Points.AddXY(i, i);
    }
}

それでは、ビルドしてデバッグ実行してみます。傾き1の比例グラフが書けました。今度は、時間てきな要素を追加していきます。先ほど、MainForm_Load関数追加したコードは削除しておきます。次にダイアログを下記のように変更します。

「実行」ボタンをダブルクリックして、button1_Click関数を作成します。下記のようにコーディングします。