LinkIT OneとGrove IoTスターターキット(AWS対応)
この文書は AI によって翻訳されています。内容に不正確な点や改善すべき点がございましたら、文書下部のコメント欄または以下の Issue ページにてご報告ください。
https://github.com/Seeed-Studio/wiki-documents/issues
主な参考資料: Grove IoTスターターキット(AWS対応), LinkIt ONE, MediaTek AWS IoTガイド
LinkIt ONE開発ボードは、ウェアラブルおよびIoT製品のプロトタイピング向けのオープンソースで高性能な開発ボードです。このボードはMT2502(ARM7EJ-S™ MCU)をベースにしており、GSM、GPRS、Wi-Fi、Bluetooth BR/EDR/BLE、GPS、オーディオデコーダー、SDカードコネクタを1つの開発ボードに統合しています。このキットを使用すると、スマートシティ、輸送、物流に関連する通信を含むクラウドコンピューティング接続プロジェクトを構築できます。
AWS IoTを使用すると、2つの主要なタスクを達成できます:データのセキュリティと柔軟な遠隔操作。データはすべてのIoTデバイスの重要な要素です。データをセルラーまたはWi-Fiネットワークを介してクラウドに送信する際、テレメトリが機密であることを確保する必要があります。これは、AWSが提供するさまざまなセキュリティメカニズムによって克服できます。AWSルールエンジンを使用すると、プロジェクトのために他のAWSサービスと統合した完全なソリューションを構築できます。
MediaTek LinkIt™ ONEとGrove IoTスターターキット(AWS対応)を使用すると、強力なウェアラブルデバイスや最先端のIoTデバイスを作成し、デバイスデータをAmazon Web Servicesに送信できます。このキットには、データ収集用のGroveセンサーと、デバイス上で視覚的インターフェースを取得するための周辺機器が含まれています。また、AWSクラウドを採用することで、柔軟性、スケーラビリティ、オンデマンド課金の利点を享受できます。
同梱物
特徴
簡単で完全かつ強力な開発プラットフォーム(LinkIt™ ONE)。
Groveシステムによる多様な機能モジュール。
AWS認証サービスを通じて、アプリケーション(ウェブアプリケーション、モバイルアプリ、制御デバイス)とリモートデバイス(センサー、アクチュエータ、組み込みデバイス、スマート家電)間の機密通信。
アプリケーションをAWSコンピューティングプラットフォームに活用。
機能豊富で先進的かつ未来志向のアプリケーションを構築するため。
始める
AWS IoTサービスの設定
まず初めに、AWS IoTサービスアカウントを取得し、いくつかの設定を行います。
AWS IoTコンソールにアクセスし、AWS IoT ダッシュボードを開きます。
1. 左上のサービスをクリックし、その後AWS IoTをクリックします。以下の画像を参照してください。
2. Get startedボタンをクリックします。
3. Create a Resourceをクリックし、その後Create a thingをクリックします。
4. Connect a deviceをクリックします。
5. Embedded Cを選択し、Generate certificateとポリシーをクリックします。キーと証明書をダウンロードするリンクをクリックしてください。これらは後で使用します。
6. 以下のようなコードが表示されます。このコードを空のドキュメントにコピーしてください。後で使用します。その後、Return to Thing Detailをクリックします。
LinkIt ONE開発環境のセットアップ
このチュートリアルはWindows(Windows 7以上)システムとArduino IDE 1.5.7およびLinkIt SDK 1.1.17を使用します。
開発環境の構築についてはこちらを参照してください。
注意: このバージョンはArduino IDE 1.5.7(およびArduino IDE 1.6.5)とLinkIt SDK 1.1.17のみをサポートします。
サンプルをダウンロードして実行
AWS IoTサービスはLinkIt ONE開発ボードをサポートし、スマートプロジェクトとAmazonのIoT最適化クラウド間の安全な通信を可能にします。AWS IoTサービスはメッセージブローカー(MQTTブローカー)とHTTPを通信プロトコルとして使用します。LinkIt ONE開発ボードでこれをサポートするために、LinkIt ONE用のmbed TLSライブラリ(mbed TLSライブラリのバージョン)が提供され、Transport Layer Security(TLS)を提供します。このライブラリは新規および既存の(組み込み)アプリケーションに簡単に統合でき、安全な通信、暗号化、キー管理の構築ブロックを提供します。
- スケッチをこちらからダウンロードしてください。
- Download ZIPをクリックしてコードをダウンロードします。ダウンロードしたコードはArduinoライブラリではなく、スケッチブックであり、プロジェクトに必要なすべてのライブラリが含まれています。
Githubからダウンロードしたファイルを解凍すると、aws_mbedtls_mqtt-masterという名前のフォルダが得られます。ファイル名から「-master」を削除してください。
Arduino IDEの設定
1. Arduino IDE(1.5.7)を開き、File > Preferences > Sketchbook Locationをクリックし、上記で言及したフォルダ(ArduinoPhone-master)を参照してください。その後、OKをクリックして保存します。
2. Arduino IDEを閉じて再起動し、File > Sketchbook > aws_paho_shadowをクリックすると、コードが読み込まれます。
LinkIt ONEのストレージにキーを配置
1. AWS IoTサービスのアプリケーション開発はArduino IDEで行われます。スケッチをアップロードする前に、デバイスまたはアプリケーション通信用に作成した証明書(.keyまたは.crtファイル)をLinkIt ONE開発ボードのフラッシュストレージに以下の手順で追加します。
以下のようにMass Storageモードに切り替えます。デスクトップOSに新しいドライバーが存在しない場合は、電源を切断する必要があります。
2. コンピュータを開き、「デバイスとリムーバブルストレージ」に移動します。LinkIt ONE 開発ボードに対応するリムーバブルディスクドライブを開きます。
3. AWS IoT からダウンロードしたキーと証明書ファイルをディスクにコピーします。
また、ダウンロードしたコード内の \aws_mbedtls_mqtt\root_cert フォルダにある VeriSign-Class 3-Public-Primary-Certification-Authority-G5 (1).pem ファイルをリムーバブルディスクにコピーし、root-CA.crt に名前を変更します。
その後、LinkIt ONE ボードの隅にあるスイッチを UART モードに切り替えます。
コードを少し修正する
File>Sketchbook>aws_paho_shadow をクリックしてコードを開きます。
1. aws_paho_shadow.h 内の以下のコードを見つけます。
2. AWS IoT で Thing を作成したときのコードを思い出してください。
そのコードをコピーして aws_paho_shadow.h に置き換えます。
3. Wi-Fi アクセスポイントを設定します。
4. Win+R を押して cmd を入力し、AWS_IOT_MQTT_HOST のアドレスを ping します。
ping A2DWFZYZMAZJGZ.iot.us-east-1.amazonaws.com
注意: A2DWFZYZMAZJGZ.iot.us-east-1.amazonaws.com を、以前コピーしたコード内の定数 AWS_IOT_MQTT_HOST の値に置き換える必要があります。
次のような結果が得られます。
そして、IP_ADDRESS(40行目)をこの数値(例: 54.164.100.76)に変更します。
ハードウェア接続
必要な材料:
Base Shield v2.0、Base Shield ボードの隅にあるスイッチを 3V3 に設定します。
Grove - Touch Sensor を D6 に接続します。
Grove - LED Bar を D2 に接続します。
コードをアップロードする
ヒント: ライブラリファイル(またはヘッダーファイル)の不足エラーが表示された場合は、こちらを参照してください。 LinkIt ONE を PC に接続し、最初に Wi-Fi アンテナを挿入することを忘れないでください。デバイスマネージャーを開くと、2つの COM ポートが表示されます。
Tools>Board をクリックして LinkIt ONE を選択します。Tool>Ports をクリックして MTK USB Debug Port の番号を選択します。最後に、Upload ボタンをクリックしてコードをアップロードします。
出力を確認する
注意: アンテナが接続されている必要があります。こちらを参照してください。
1. Arduino IDE のポートを MTK USB Modem Port に変更し、シリアルモニターを開いてボーレートを 9600 に設定します。
2. ...X.509 certificate... ok と表示された場合、デバイスが AWS に正常に接続されたことを意味します。問題がある場合は、LinkIt ONE の電源を入れ直して再試行してください。
次に、AWS IoT のウェブサイトを開き、アカウントにサインインします。数分前に作成した Thing をクリックします。
右側にコントロールパネルが表示されます。
現在、Touch Sensor のステータスを確認できます。Touch Sensor を押して更新してみてください。
3. Touch のステータスが変更されたことがわかります。次に、LED Bar を制御してみましょう。Update shadow をクリックします。
4. 以下のコードで既存のコードをすべて置き換えます。
{
"desired": {
"ledBarStatus": 5
},
"reported": {
"Touch": false,
"ledBarStatus": 0
}
}
リソース
技術サポート & 製品ディスカッション
弊社製品をお選びいただきありがとうございます!お客様が弊社製品をスムーズにご利用いただけるよう、さまざまなサポートを提供しております。異なる好みやニーズに対応するため、いくつかのコミュニケーションチャネルをご用意しています。