SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

IBM Bluemix User Group(BMXUG)リレー寄稿

Watson IoT PlatformとNode-REDで、Wio Nodeのセンサーデータ取得とデバイスへのデータ出力を体験してみよう

IBM Bluemix User Group(BMXUG)リレー寄稿 第3回

  • X ポスト
  • このエントリーをはてなブックマークに追加

センサー取得とデータ表示を試してみる

 ここまでの設定、お疲れさまでした。センサー取得とデータ表示を試してみましょう。Wio NodeデバイスとNode-REDを実際に連携してみます。

温度データを7セグメント4桁ディスプレイに表示

 このように、Watson IoT PlatformのQuickStartの温度データを発信するダミーアプリからNode-REDがWio Node APIに橋渡しをしてWio Nodeデバイスの7セグメント4桁ディスプレイに温度データを表示します。

 こちらの記事を参考に以下アドレスにアクセスします。

 アクセスすると、上図のように温度データを発信するのダミーアプリが表示されるので、右上のデバイスIDをコピーします。このデバイスIDの値はアクセスするたびにランダムに生成されます。今回はa142ca1532cdです。

 Node-REDに戻り、アプリデータを受信するIBM IoT App InというIBM IoTノードをクリックします。

 ノードの設定は以下のとおりです。

タイトル 設定内容 設定内容の補足
Authentication Quickstart  
Input Type Device Event  
Device Id 先ほどの控えていたデバイスID 今回はa142ca1532cd
Name IBM IoT App In  

 設定を終えてデプロイします。

 数秒待つと温度データが7セグメント4桁ディスプレイに表示に表示されます。

 先ほどのテストセンサーアプリですと18度となっていたので、18と表示されます。

 このセンサーアプリは下部の上下ボタンで温度が上下できるので、13度とすれば連動して変化します。

超音波距離センサモジュールの値をQuickStartのグラフで可視化する

 Wio Nodeデバイスの超音波距離センサモジュールが測定している障害物との距離データをWio Node API経由でNode-REDが1秒ごと随時送信するようにWatson IoT Platformへ橋渡しをして、Watson IoT PlatformのQuickStartでグラフで可視化します。

 Debug output payloadのデバッグノードをONにした状態にします。

 超音波距離センサモジュールを手を近づけてみます。

 そうすると、デバッグウィンドウで超音波距離センサモジュールの反応が確認できます。

 手を最も近づけたときは1.67cmや2.4cmと表示され、話したときは部屋の天井が検知されて166.02となりました。

 つづいて、超音波距離センサモジュールの値をNode-REDで連携できたのでQuickStartのグラフで可視化してみます。まずNode-REDをフローを作り変えていきます。

 Wio sensorノードの後にFunctionノードを加えます。

 ソースコードは以下のように記述します。

// Create MQTT message in JSON
msg = {
  payload: JSON.stringify(
    {
      d:{
        "range" : msg.payload  // デバックログに出ていた超音波距離センサモジュールの値

      }
    }
  )
};
return msg;

 msg.payloadに先ほどデバックログに出ていた超音波距離センサモジュールの値が入っているので、QuickStartのグラフで可視化できるようなデータ構造に加工します。

 つづいて、IBM IoT 送信ノードを加えます。

 Watson IoT Platform QuickStartに接続できるように上記の設定にします。

タイトル 設定内容 設定内容の補足
Authentication Quickstart  
Device Id WioNodeRange QuickStartで監視するデバイスID
Event Type update イベントタイプはupdateにします
Data range:10  
Name Send to IBM IoT Platform  

 今回設定したノードを確認してNode-REDをデプロイします。

 いよいよ、データを可視化してみます。Watson IoT Platform QuickStartにアクセスします。

 デバイスIDの入力エリアに今回のデバイスID WioNodeRangeを入力し、進むボタンを押します。

 しばらく待っていると、超音波距離センサモジュールの値が折れ線グラフで表示されます。

まとめ

 このように、システムからデータをデバイスに表示したり、センサーデータをシステムで可視化したりの流れを、BluemixとWio Nodeでつかむことができました。

 IoTは、デバイス制御にはじまり、サーバーによる収集やデータ蓄積、さらに展開する上でのセキュリティなど、個々の技術要素もさることながら、それぞれの技術が連携するという全体像を捉えることも大事です。

 今回のWio NodeはWioアプリでデバイス制御のプログラムとAPIの構築は任せて、「データを取得した後にどう扱う?」「サーバー側からどういうきっかけでデバイスを動かす?」というその先の技術の連携に注力できます。

 Wio Nodeに装着できるGroveパーツは多数あるので、センサーを光センサーや温度センサーに付け替えて測定するものを替えてグラフ可視化を行ったり、サーバーからきっかけを受け取るパーツをモーターやLEDに付け替えて適切なアクションを考えたりと触ってみると、より楽しみながら考えが深められるので、ぜひ試行錯誤してみてください。

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
IBM Bluemix User Group(BMXUG)リレー寄稿連載記事一覧

もっと読む

この記事の著者

田中 正吾(Bluemix User Group)(タナカ セイゴ)

2004年よりフリーランスで活動。以後インタラクティブコンテンツ制作を主に関わる。最近はフロントエンドを中心にJavaScript開発制作・デジタルサイネージ制作・デバイス連携など行っています。ウォンバットが好きなのでWEBの力を注いで情報収集中。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/9624 2016/09/21 14:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング