21: Intel Edison実践編 (1) 〜 センサーデータを受け取るSaaS「IoT Analytics」
よく訓練されたアップル信者、都元です。昨日のエントリーはこちらです。さてそろそろIoTっぽく実践編のスタートです。
Edisonに接続されるセンサーから得られた値は、サーバに飛ばして分析したいと思います。弊社としては「その送り先は是非ともAWSに」という考えですが、簡単に試してみる仕組みとしては少々重厚です。
IoT Analytics
そこでひとまずここでは、Intel社が提供している、IoT Analyticsというサービス(無料)を利用してみます。このサービスは、要するに時系列のセンサー情報を複数のデバイスから受け取り、それをチャート表示したり、CSVとして取り出したりできます。
IoT Analytics Dashboard website
まずはサインアップですが、私が試してみたところ、FacebookとGoogleによるサインアップはどこかバグっているようで、真っ白い画面で止まってしまいます *1。GitHubによるサインアップは成功しました。もしくはメールアドレスとパスワードを使ったサインアップでも構わないと思います。
続いてアカウントを作れ、と言われます。私はこれが「ユーザアカウント」のことだと勘違いしたのですが、どうやら1人のユーザが色んなプロジェクトに出入りし、それぞれのプロジェクトに対するロール(管理者等)を持つ、というようなモデルのようんです。ここで作るアカウントというのはプロジェクトに相当するもののように思えました。
ダッシュボードには最初ほぼ情報はありません。左上のボタンをクリックすると左側にメニューが現れます。
このメニューから「Account」を選び、Activation Codeを得ます。このコードは発行から1時間の有効期限があり、切れてしまった場合は再発行が必要です。このコードをEdisonに入力することにより、デバイスをIoT Analyticsに登録・認識させる、という仕組みです。
EdisonをIoT Analyticsに登録する
Edisonの中には、IoT Analyticsと通信するためのエージェントが既にインストールされていますが、初期状態では無効となっています。下記コマンドで有効にしておきましょう。
# systemctl enable iotkit-agent # systemctl start iotkit-agent
この上で、接続テストを行います。iotkit-admin testコマンドでこのような出力となれば正常です。
# iotkit-admin test 2014-12-21T00:29:32.909Z - info: Trying to connect to host ... 2014-12-21T00:29:33.870Z - info: Connected to dashboard.us.enableiot.com 2014-12-21T00:29:33.874Z - info: Environment: prod 2014-12-21T00:29:33.876Z - info: Build: 0.11.2
ちなみに、プロキシが必要な環境下では、下記コマンドでプロキシの登録を行いましょう。
# iotkit-admin proxy http://proxy.example.com 8080
続いて、このEdison固有のデバイスIDは下記コマンドで確認できます。結局MACアドレスのようです。また、このデバイスIDは自分たちで任意の値に変更することもできます。
# iotkit-admin device-id 2014-12-21T00:29:52.361Z - info: Device ID: XX-XX-XX-XX-XX-XX
さてここで、先ほど取得したActivation Codeを使います。下記コマンドのXXXXXXXX部分は、Activation Codeに置き換えてください。
# iotkit-admin activate XXXXXXXX 2014-12-21T00:32:45.907Z - info: Activating ... 2014-12-21T00:32:47.593Z - info: Saving device token... 2014-12-21T00:32:47.606Z - info: Sending attributes...
以上でデバイスの登録が完了しました。IoT Analyticsのダッシュボードに、デバイスが現れているはずです。
明日のエントリーはこちらです。
脚注
- そのうち直ると思いますが。 ↩