# Mbed Os For Device Tracking Mbed OSは、小さなフットプリント内でIoTスタックとして設計されています。Mbed OS環境で作業する際、デバイスから多くの情報を収集できます。収集したデータは、Pelion IoTプラットフォームの一部としてデータ管理を実行するTreasure Data Serviceに配信できます。 Mbed OSとTreasure Dataを使用したIoT実装を最適にサポートするアーキテクチャを決定する必要があります。以下の図は、典型的なアーキテクチャの例を示しています。 ![](/assets/image-20191021-201433.16d7aff49a248243b1d7309b99f0a18bfbd744a42fd5092b9e16131f5189a8a7.9854c389.png) この記事では、サンプルプログラムを使用して、MbedデバイスをHTTP経由で直接Treasure DataにWifi接続する方法を説明します。 プロジェクトページはこちらです: [https://os.mbed.com/users/JunkoNakajima/code/mbed-os-example-td-rest-online-compiler/](https://os.mbed.com/users/JunkoNakajima/code/mbed-os-example-td-rest-online-compiler/) このプログラムは、STM32L475でテストされています。 # 前提条件 - Treasure Data アカウント (IoT Platformに関心がある場合はお問い合わせください) - Mbed アカウント - (アカウントをお持ちでない場合は[サインアップ](https://os.mbed.com/account/signup/)してください) - Mbed OS デバイス (例: [STM32L475](https://www.st.com/en/evaluation-tools/b-l475e-iot01a.md)) ![](/assets/image-20191021-201452.cc8d811b3ba239b7f9e044befb30b6a59b8bbb0cefda7b6d3401ce9587cdd6cc.9854c389.png) # Pelion Device Management上でプロジェクトを構築する サンプルプロジェクトを構築しましょう。 ## プラットフォームを選択する まず、Online Compilerでデバイスを選択します。Pelion Device Managementポータルにアクセスし、「**Compiler**」をクリックします。ワークスペースで、**no device selected** (初期状態)をクリックし、次に「**Add Board**」をクリックします。 ![](/assets/image-20191021-201504.372d0b1d2363ff2493d855d807ee893692920693f0754070c94917d589a57f98.9854c389.png) この例では、ウィンドウで「**STM32L475**」を検索します。以下のボードが表示されます。次に、「**Add to your Mbed Compiler**」をクリックします。[https://os.mbed.com/platforms/ST-Discovery-L475E-IOT01A/](https://os.mbed.com/platforms/ST-Discovery-L475E-IOT01A/) これで、オンラインコンパイラでボードをプラットフォームとして選択できます。 ![](/assets/image-20191021-201514.9e37bb78890dc3d2b8b7c8f6b1c5248a06b7d6591492c9d5744b0d192939daca.9854c389.png) ## インポート サンプルプロジェクトをワークスペースにインポートします。以下の画像に示すように、[Mbed OS example](/ja/int/mbed-os-for-device-tracking)ページにアクセスし、**Import into Compiler**をクリックします。プログラムがオンラインコンパイラにインポートされます。 [https://os.mbed.com/users/JunkoNakajima/code/mbed-os-example-td-rest-online-compiler/](https://os.mbed.com/users/JunkoNakajima/code/mbed-os-example-td-rest-online-compiler/) ![](/assets/image-20191021-201623.73267f164dbe9039129d82df5ca1d2ceae743693409fc96fb5b59af8140f93f5.9854c389.png) ## パラメータを設定する 次の3つのパラメータを設定する必要があります: - wifi-ssid - wifi-password - api-key インポートされたファイルの1つであるmbed_app.jsonファイルでパラメータを設定します。 - wifi-ssid: お使いのWifi SSID - wifi-password: お使いのWifiパスワード - [api-key](https://docs.treasuredata.com/smart/project-product-documentation/getting-your-api-keys): お使いのTreasure Data アカウント ![](/assets/image-20191021-201633.a18cae998f95f05f8e78733c40813af215056ea7939c9436d923c8ffb7ce4f4f.9854c389.png) main.cppのTreasureData_RESTAPI関数でDatabaseとTableを編集します。 ![](/assets/image-20191021-201641.a9f59ce67a53e94e93512525c01ed327533961397239010666f1927293d8f593.9854c389.png) ## アプリケーションを起動する Mbed OSデバイスが(WIFI経由で)PCに接続されていることを確認します。接続にはSTLINKコネクタを使用します。 アプリケーションをコンパイルし、.binファイルをターゲットボード(以前にプラットフォームとして選択したボード)にコピーします。 アプリケーションを起動するには、回路基板上のリセットボタンを押します。 ![](/assets/image-20191021-201649.67eddebf7fe8318b12398296811926cc63282323a8c88ebe4d09c16a3c836461.9854c389.png) Mbed OSデバイスから配信されたレコードがTreasure Dataに表示されます。 ![](/assets/image-20191021-201659.4219878cb232d5e4ab0ad81a18369e5a68a47c24b72bdab24aaa6b445e652df6.9854c389.png)