AmbientはIoT用のクラウドサービスです。 マイコンから送られたセンサーデーターを受信し、蓄積し、可視化(グラフ化)します。 このページではAmbientの使い方を説明します。

ambientstructure

Ambientを使う大まかな流れは次のようになります。

  1. ユーザー登録(無料)
  2. チャネル生成
  3. マイコン側プログラミング
  4. データー送信
  5. 可視化(グラフ化)

Ambientではマイコンからデーターを送ってグラフ化するまでは非常に簡単です。 最低限必要なのはAmbientサイトで「チャネル」を作ることと、 マイコン側のプログラムでチャネルIDとライトキーを指定してデーターを送ることだけです。 チャネルの名前やどんなマイコンがつながっているか、 どんなセンサーのどんなデーターを送るかといった属性情報は後から記述することができますが、 複雑なことは後回しにして、とにかく最初は簡単に始められます。

1.ユーザー登録(無料)

Ambientを使うには、まず無料のユーザー登録をします。 メールアドレスとパスワードを入力すると、入力したメールアドレスに確認メールが送られますので、 メール中のURLをクリックするとユーザー登録は完了です。

2.チャネル生成

ユーザー登録してログインすると、次のようなチャネル一覧ページが現れます。 Ambientではマイコンから送信するデーターを「チャネル」という単位で管理します。 データーを送る際は「チャネル」を指定して送ります。 最初はチャネルがないので、「チャネルを作る」ボタンがあるだけです。

fig1

「チャネルを作る」ボタンを押すとチャネルが生成され、 作られたチャネルの情報が表示されます。

fig2

3.マイコン側プログラミング

マイコンからデーターを送信するときは、チャネルIDとライトキーを指定します。 Arduinoの具体例とプログラムはそれぞれ

をご覧いただくとして、ここでは概要だけを説明します。Ambientにデーターを送信するために、 最初にAmbientデーターの初期化をおこないます。 ここで、2で生成したチャネルのチャネルIDとライトキーを指定します。 3番目のパラメーターはWiFiClientの管理データーのアドレスです。

    ambient.begin(channelId, writeKey, &client);

データーを送るときは、次のようにします。

    ambient.set(1, temp);
    ambient.set(2, humid);
    ambient.send();

Ambientでは一つのチャネルに対して8種類までのデーターを送ることが出来ます。 例ではtempとhumidという二つのデーターをセットし、ambient.send()で送信しています。 Arduino用のライブラリーはGithubに公開しましたので、ご覧ください。

4.データー送信

ambient.send()を呼び出すことでデーターが送信されます。 Ambientでは最短の送信間隔が5秒ですので、5秒以上間隔をあけてデーターを送信してください。 Ambientはデーターを受信すると受信時刻と合わせてデーターを保存します。

5.可視化(グラフ化)

チャネル一覧ページのチャネル名部分をクリックすると、 そのチャネルのページに移行し、送信したデーターを確認できます。

fig3

Ambientの概要と使い方の流れはご理解いただけたと思います。 次は Arduino ESP8266で温度、湿度を測定し、Ambientに送信してグラフ化する事例を説明します。